|
|
SQL(Structured Query Language)结构化查询语言,是一种数据库查询及程序设计语言,用于存取数据以及查询、更新和管理关系数据库系统。它不要求用户指定对数据的存放方法,也不需要用户了解具体的数据存放方式,不同底层结构的不同数据库系统可以使用相同的SQL语言作为数据输入与管理的接口,常用的数据库开发系统,都支持SQL语言作为查询语言。
|
|
|
|
.非过程化语言。SQL是一个非过程化的语言,因为它一次处理一个记录,对数据提供自动导航。SQL允许用户在高层的数据结构上工作,而不对单个记录进行操作。
|
|
|
.统一的语言。SQL将许多任务统一在一种语言之中,包括:查询数据;在表中插入、修改和删除记录;建立、修改和删除数据对象;控制对数据和数据对象的存取;保证数据库一致性和完整性。
|
|
|
.是所有关系数据库的公共语言。由于主流的关系数据库管理系统都支持SQL语言,所以SQL语言具有很强的公用性,所有用SQL编写的程序都是可以移植的。
|
|
|
|
|
|
|
语法说明:CREATE语句用于创建数据库中的表。其中column_name代表表中的字段名称,data_type代表字段可容纳何种数据类型。常用的数据类型可以是integer(size)、int(size)、smallint(size)、tinyint(size)、decimal(size,d)、numeric(size,d)、varchar(size)、date(yyyymmdd)等。CREATE语句的应用格式如下所示。
|
|
|
|
|
该语句创建Student学生表,其中包含Id、Sname等六个字段。
|
|
|
(2)SELECT查询语句。SELECT语句是数据库最基本语句之一,也是最常用的SQL操作。用户使用SELECT语句可以从数据库中按照自身的需要查询数据信息。系统按照用户的要求选择数据,然后将选择的数据以用户规定的格式整理后返回给用户。用户使用SELECT语句不但可以对数据库进行精确查询,还可以进行模糊查询。
|
|
|
|
|
语法说明:ALL|DISTINCT用来标识在查询结果中出现相同行时的处理方式。如果使用关键字ALL,则返回查询结果中的所有行(包括重复行);如果使用关键字DISTINCT,返回删除相同行的查询结果;select_list表示获取字段信息的字段列表,各个字段名称之间用逗号分隔。在这个列表中可以包含数据源表或视图中的字段名称及其他表达式,例如常量或函数。如果用户用“*”来代替字段列表,那么系统将返回指定数据库表中的全部数据信息;INTO new_table_list代表创建一个新的数据表,这个数据表的名称是new_table_list,包含的数据信息是查询出来的结果集;table_list表示数据信息的数据源表列表;WHERE search_conditions代表查询条件,该子句表示一个或多个筛选条件的组合。WHERE子句中可以使用算数运算符、比较运算符和逻辑运算符来设置条件。还可以使用BETWEEN…AND…、LIKE、IN、NOT IN等特殊运算符;GROUP BY group_by_list表示查询的分组条件,即归纳信息类型;HAVING search_conditions表示组或聚合的查询条件;ORDER BY order_lis表示查询结果的排序方式。具体应用格式如以下SQL语句所示。
|
|
|
|
|
|
|
|
该语句查找Student学生表中广东籍女学生的Sno、Sname和Sclass信息。
|
|
|
|
|
该语句查找Student学生表中Sno最小的前10个记录。
|
|
|
|
|
该语句查找Student学生表中所有Snative既不是湖南也不是湖北的学生信息。
|
|
|
|
|
该语句查询以Sclass作为分组条件,查询结果为Student学生表中每个班的人数。
|
|
|
|
|
该语句查找Student学生表中人数大于30的Sclass和人数。HAVING子句总是跟在GROUP BY子句之后,不可以单独使用。
|
|
|
(3)INSERT插入语句。在SQL语句中,向数据表中添加数据的常用方法就是使用INSERT语句。
|
|
|
|
|
语法说明:INSERT INTO子句用于指定向某数据表插入数据。数据表名跟在INSERT INTO关键字后面;column name用于指定该数据表的列名,可以指定一列或者多列,所有这些列都必须放在圆括号“()”中。如果要指定多个列,则必须用逗号隔开。如果指定了列名,那么在目标数据表中所有未被指定的列必须支持空值或者默认值;VALUES子句主要用于提供向表中插入的值。这些值也必须放在圆括号中,如果指定的值为多个时,这些值之间也必须用逗号隔开。具体应用形式可见以下语句。
|
|
|
|
|
|
当数据被添加到数据表之后,会经常需要修改。在SQL语言中,对数据的修改是通过使用UPDATE语句来实现的。
|
|
|
|
|
语法说明:UPDATE子句和SET子句是必需的,而WHERE子句是可选的。在UPDATE子句中,必须指定将要更新的数据表的名称。在SET子句中,必须指定一个或多个子句表达式。使用UPDATE语句可以更改表中单行、多行或者表或视图中所有行的数值。具体应用形式可见以下语句。
|
|
|
|
将Student学生表中Sname为刘晶晶的Sclass和Snative记录进行更新。
|
|
|
|
DELETE语句用来从表或视图中删除一行或者多行记录。
|
|
|
|
|
语法说明:DELETE FROM子句要求指定从中删除行的表的名称,WHERE指定搜索条件。如果在DELETE语句中没有包括WHERE子句,那么将从指定的表中删除所有行。在DELETE语句中没有指定列名,这是因为不能从表中删除单个列的值。具体应用形式可见以下语句。
|
|
|
|
该语句删除Student学生表中Sname为“刘晶晶”的记录。
|
|
|