首页 SQl语句(1)

SQl语句(1)

举报
开通vip

SQl语句(1)一、 SQL语言概述 SQL是Structured Query Language的缩写,即结构化查询语言。它既可以用于大型数据库系统,也可以用于微型机数据库系统,是关系数据库的标准语言。 1.1 SQL语言的特点 SQL语言之所以成为数据库标准语言,因其具有以下特点: 1. 综合统一 SQL语言集数据库定义语言(DDL)、数据操纵语言(DML,数据操纵包括数据查询)、数据控制语言(DCL)的功能于一体,可以独立完成数据库生命周期中的全部活动,包括定义数据库和表结构、录入数据及建力数据库、查询、更新、维护、...

SQl语句(1)
一、 SQL语言概述 SQL是Structured Query Language的缩写,即结构化查询语言。它既可以用于大型数据库系统,也可以用于微型机数据库系统,是关系数据库的 标准 excel标准偏差excel标准偏差函数exl标准差函数国标检验抽样标准表免费下载红头文件格式标准下载 语言。 1.1 SQL语言的特点 SQL语言之所以成为数据库标准语言,因其具有以下特点: 1. 综合统一 SQL语言集数据库定义语言(DDL)、数据操纵语言(DML,数据操纵包括数据查询)、数据控制语言(DCL)的功能于一体,可以独立完成数据库生命周期中的全部活动,包括定义数据库和表结构、录入数据及建力数据库、查询、更新、维护、数据库重构、数据库安全性控制等一系列操作的要求,这就为数据库应用系统的开发提供了良好的环境。 2. 高度非过程化 用SQL语言进行数据操作时,用户只需提出做什么,而不必指明怎么做。这不但大大减轻了用户的负担,而且还有利于提高数据独立性。 3. 面向集合的操作方式 SQL语言采用集合操作方式,不仅查找结果可以是记录的集合,而且一次插入、删除、更新操作的对象也可以是记录的集合。 4. 以同一种语法结构提供两种使用方式 SQL语言既是自含式语言,又是嵌入式语言。作为自含式语言,它能够独立地用于联机交互的使用方式,用户可以在键盘上直接键入SQL命令对数据库进行操作。作为嵌入式语言,SQL语句能够嵌入到高级语言(例如C,FORTRAN,PL/I)程序中,供程序员 设计 领导形象设计圆作业设计ao工艺污水处理厂设计附属工程施工组织设计清扫机器人结构设计 程序时使用。而在两种不同的使用方式下,SQL语言的语法结构基本上是一致的。这种以统一的语法结构提供两种不同的使用方法的作法,为用户提供了极大的灵活性与方便性。 5. 语言简洁,易学易用 SQL语言功能极强,但由于设计巧妙,语言十分简洁,完成数据定义、数据操纵、数据控制和数据查询等核心功能只用了9个动词:CREATE,DROP,ALTER,SELECT,INSERT,UPDATE,DELETE,GRANT,REVOKE。易学易用是SQL的最大特点。 1.2 数据定义语言 数据定义语言由CREATE, DROP, ALTER命令组成。这3个命令关键字针对不同的数据库对象(如数据库、查询、视图等)分别有3个命令。例如针对表对象的3个命令是:建表命令CREATE TABLE;修改表命令ALTER TABLE;删除表DROP TABLE。数据库可操作多少个对象就有多少3个相应的命令。下面以定义表结构为例,讲解这三个命令。 1.建立表结构CREATE TABLE 命令的语法与功能详见“4.2.3 在数据库中新建表” 【例1】使用命令建立“研究生”自由表,其表结构及要求如下: 表8. 1 研究生表的结构及要求 字段名 字段类型 字段长度 小数位数 特殊要求 字段名 字段类型 字段长度 小数位数 特殊要求 学号 C 7 年龄 N 3 姓名 C 8 入学年月 D 允许为空值 性别 C 2 定义该表的SQL命令为: CREATE TABLE d:\教学管理\研究生 FREE (学号 C (7),姓名 C (8),性别 C (2),; 年龄 N (3), 入学年月 D NULL) 【例2】使用命令建立数据库XSK,然后中该库中建立student表,其表结构及要求为: 表8. 2 student表的结构及要求 字段名 字段类型 字段长度 小数位数 特殊要求 字段名 字段类型 字段长度 小数位数 特殊要求 学号 C 7 主索引 是否党员 L 姓名 C 8 不能不空值 入学年月 D 缺省为2001/9/1 性别 C 2 备注 D 禁止转换 年龄 N 3 大于10小于45 命令序列如下: CREATE DATABASE xsk CREATE TABLE student (学号 C (7) PRIMARY KEY,姓名 C (8) NOT NULL,性别 C (2),; 年龄 N (3) CHECK 年龄>10 AND 年龄<45 ERROR “年龄范围在10~45,请重输!”,; 是否党员 L, 入学年月 D DEFAULT CTOD(‘09/01/2001’), 备注 M NOCPTRANS ) 【例3】 在XSK库中建立score表,其表结构及要求为: 表8. 3 score表的结构及要求 字段名 字段类型 字段长度 小数位数 特殊要求 学号 C 7 外关键字,与student表建立关系 课号 C 5 外关键字,与course表建立关系(course表的表结构及建立参见第4章) 期末 N 5 2 命令序列如下: OPEN DATABASE xsk CREATE TABLE score (学号 C (7) REFERENCES student,课号 C (5),期末 N (5,2),; PRIMARY KEY 学号+课号 TAG 学号课号, FOREIGN KEY 课号 TAG 课号 ; REFERENCES course TAG 课号) 2.修改表结构 (1) 语法格式1 语法1:ALTER TABLE <表名1> ADD | ALTER [COLUMN] <字段名><字段类型> [(<宽度> [, <小数位数>])] [NULL | NOT NULL][CHECK [ERROR ]] [DEFAULT ] [PRIMARY KEY | UNIQUE] [REFERENCES <表名2> [TAG <标识名>]][NOCPTRANS][NOVALIDATE] 功能:为指定的表的指定字段进行修改或添加指定的字段 【例4】为score表添加两个字段:平时 N (5,1)和期中 N (5,1)。 ALTER TABLE score ADD 平时 N (5,1) ALTER TABLE score ADD 期中 N (5,1) 【例5】在score表中,修改期末字段为 N (5,1),并设置平时、期中和期末字段的值小于等于100 。 ALTER TABLE score ALTER 期末 N (5,1) CHECK 期末<=100 ERROR “分数不能大于100!” ALTER TABLE score ALTER 期中 N (5,1) CHECK 期中<=100 ERROR “分数不能大于100!” ALTER TABLE score ALTER 平时 N (5,1) CHECK 平时<=100 ERROR “分数不能大于100!” (2) 语法格式2 语法2:ALTER TABLE <表名> ALTER [COLUMN] <字段名> [NULL | NOT NULL] [SET DEFAULT ][SET CHECK [ERROR ]] [DROP DEFAULT] [DROP CHECK] 功能:修改指定的表中指定字段的DEFAULT、CHECK规则,但不影响原有表的数据。 【例6】在score表中,删除对期末字段的合法值约束,并设置平时字段的缺省值为80。 ALTER TABLE score ALTER 期末 DROP CHECK ALTER TABLE score ALTER 平时 SET DEFAULT 80 (3) 语法格式3 语法3:ALTER TABLE <表名1> [DROP [COLUMN] <字段名>] &&从指定表删除指定的字段 [SET CHECK l [ERROR ]] &&设置该字段的合法值和错误提示信息 [DROP CHECK] &&删除该字段的合法值设置 [ADD PRIMARY KEY TAG <索引标识> [FOR l]] [DROP PRIMARY KEY] &&删除该表的主索引 [ADD UNIQUE [TAG <索引标识> [FOR l]]] [DROP UNIQUE TAG <索引标识>] &&删除该表的候选索引 [ADD FOREIGN KEY [] TAG <索引标识> [FOR l] REFERENCES <表名2> [TAG <索引标识>]] &&设置该表的外部关键字 [DROP FOREIGN KEY TAG <索引标识> [SAVE]] &&删除该表的外部关键字 [RENAME COLUMN <原字段名> TO <目标字段名>] [NOVALIDATE] &&修改表结构时,允许违反该表的数据完整性规则。 功能:删除指定的表中指定字段、修改字段名、修改指定表的完整性规则,包括主索引、外关键字、候选索引及表的合法值限定的添加与删除。 注意:修改自由表,不能使用DEFAULT、FOREIGH KEY、PRIMARY KEY、REFERENCES 或SET子句。 【例7】在student表中,删除是否党员字段,修改“备注”字段名为“其它情况”。 ALTER TABLE student DROP 是否党员 RENAME COLUMN 备注 TO其它情况 如果在删除字段上建立了索引,要先将索引删除再删除该字段。 【例 8】在student表的年龄字段上建立唯一索引。 ALTER TABLE student ADD UNIQUE 年龄 TAG 年龄 【例9】在student表中添加一个出生日期字段,删除年龄字段。 ALTER TABLE student ADD 出生日期 D ALTER TABLE student DROP UNIQUE TAG 年龄 DROP年龄 3.删除表 语法:DROP TABLE <表名> 【例10】删除已建立的course表。 DROP TABLE course 1.3 数据操纵语言 数据操纵语言是完成数据操作的命令,它由INSERT(插入), DELETE(删除), UPDATE(更新)和SELECT(查询)等组成。查询也划归为数据操纵范畴,但由于它比较特殊,所以又以查询语言单独出现。 1. 插入记录命令 在数据库应用中,需要经常向表中插入数据,这主要是由INSERT-SQL命令实现的。 (1) 语法格式1 语法1:INSERT INTO <表名>[(<字段名1>[,<字段名2>[, ...]] )] VALUES(<表达式1>[,<表达式2>[, ...]] ) 功能:在指定的表尾添加一条新记录,其值为VALUES后面表达式的值。 当需要插入表中所有字段的数据时,表名后面的字段名可以缺省,但插入数据的格式必须与表的结构完全吻合;若只需要插入表中某些字段的数据,就需要列出插入数据的字段名,当然相应表达式的数据位置应与之对应。 【例11】向student表中添加记录。 INSERT INTO student VALUES('9902101','李明','男',23, .T.,{^1981/03/24} , '三好生') INSERT INTO student(学号, 姓名) VALUES('9902103','李成功') (2) 语法格式2 语法2:INSERT INTO <表名> FROM <数组名> | FROM MEMVAR 功能:在指定的表尾添加一条新记录,其值来自于数组或对应的同名内存变量。 【例 12】先定义了数组AA(5),AA中各元素的值分别是:AA(1) = ‘9902001’, AA(2) = ‘张洋’, AA(3) = ‘女’, AA(4) = ‘1999/09/01’ ,AA(5) = ‘特长是长跑’。利用该数组向student表中添加记录。 INSERT INTO student FROM AA 完成以上操作后,在student表中添加一条新记录,新记录的值是指定的数组AA中各元素的数据。新记录的“入学年月”和“出生日期”字段为空。因为VF6要求,数组中各元素与表中各字段顺序对应。如果数组中元素的数据类型与其对应的字段类型不一致,则新记录对应的字段为空值;如果表中字段个数大于数组元素的个数,则多出的字段为空值。 【例13】已经定义了内存变量学号 = ‘9902002’, 姓名 = ‘汪洋’, 性别 = ‘男’,利用内存变量向student表中添加记录。 INSERT INTO student FROM MEMVAR 完成以上操作后,在student表中添加一条新记录,新记录的值除了“学号”、“姓名”和“性别”字段外,其他字段均为空。因为VF6默认,添加的新记录的值与指定表中各字段名同名的内存变量的值。如果同名的内存变量不存在,则相应的字段为空。 注意:在插入数据时,若指定的表没有在任何工作区中打开,当当前工作区中没有表被打开时,该命令执行后将在当前工作区打开该命令指定的表;若当前工作区打开的是其他的表,则该命令执行后将在一个新的工作区中打开,添加记录后,仍保持原当前工作区。若指定的表在非当前工作区中打开,添加记录后,指定的表仍在原工作区中打开,且仍保持原当前工作区。 2. 删除记录命令 在VF6中,DELETE-SQL可以为指定的数据表中的记录加删除标记。 语法:DELETE FROM [<数据库名>!]<表名>[WHERE][AND | OR ] 功能:从指定表中,根据指定的条件逻辑删除记录 【例14】将student表所有男生的记录逻辑删除。 DELETE FROM student WHERE 性别=’男’ 完成以上操作后,在student表将所有男生的记录逻辑删除了,但没有从物理上删除。只有执行了PACK命令,逻辑删除的记录才真正地从物理上删除。逻辑删除的记录还可以用RECALL命令取消删除。 注意:在逻辑删除记录时,若指定的表没有在任何工作区中打开,当当前工作区中没有表被打开时,该命令执行后将在当前工作区打开该命令指定的表;若当前工作区打开的是其他的表,则该命令执行后将在一个新的工作区中打开,逻辑删除完成后,仍保持原当前工作区。若指定的表在非当前工作区中打开,逻辑删除完成后,指定的表仍在原工作区中打开,且仍保持原当前工作区。 3. 更新记录命令 更新记录就是对存储在表中的记录进行修改,命令是UPDATE-SQL,也可以对用SELECT-SQL语句选择出的记录进行数据更新。 语法:UPDATE [<数据库名>!]<表名> SET<字段名1> = [, <字段名2>=...] [WHERE [AND |OR ...] 功能:用指定的新值更新记录 【例15】将student表所有99级学生“入学年月”置为1999/09/10。 UPDATE student SET 入学年月 = {^1999/09/10} WHERE LEFT(学号,2) =’99’ 【例16】将所有男生的各科平时、期中和期末成绩初始化为0。 UPDATE score SET 平时 = 0 , 期中 = 0 , 期末 = 0; WHERE 学号 IN (SELECT 学号 FROM student WHERE 性别 = ‘男’) 以上命令中,用到了WHERE条件关键字“IN”和对用SELECT-SQL语句选择出的记录进行数据更新。有关WHERE条件关键字和SELECT-SQL语句的使用,详见“8.2 SELECT命令基本用法”。 注意:UPDATE-SQL 一次只能在单一的表中更新记录。 4. 查询记录命令 语法:SELECT [ALL | DISTINCT ] [TOP [PERCENT]] [<别名>.] <选项> [ AS<列名>] [, [<别名>.] <选项> [AS<列名>]...] FROM [FORCE] [<数据库名?!] <表名> [[AS] <本地别名>] [[INNER | LEFT [OUTER] | RIGHT [OUTER] | FULL [OUTER] JOIN<数据库名>!] <表名> [[AS] <本地别名> ] [ON <连接条件> ...] [[INTO<目标>] | [TO FILE <文件名> [ADDITIVE] | TO PRINTER [PROMPT] | TO SCREEN]] [PREFERENCE<参照名>][NOCONSOLE] [PLAIN] [NOWAIT] [WHERE <连接条件1> [AND<连接条件2>...] [AND | OR<过滤条件1> [ AND | OR<过滤条件2>...]]] [GROUP BY<分组列名1>[ , <分组列名2>...]][HAVING<过滤条件>] [UNION [ALL] SELECT命令] [ORDER BY<排序项1> [ASC | DESC] [,<排序项2> [ ASC | DESC]...]] 功能:查询 这个命令的子句很多,理解了这条命令各项的含义,就能从数据库中查询出各种数据。SQL数据查询语言只有一条命令,即SELECT。与其说它是一条命令,倒不如说它是一个SELECT命令集合。它的选项极其丰富,同时查询条件和嵌套使用也是很复杂的。本章将重点介绍这条命令。 1.4 数据控制语言(DCL) 数据控制语言是用来控制用户对数据库的访问权限的。由GRANT(授权),REVOTE(回收)命令组成。由于VF6没有权限管理,所有没有数据控制语言命令。这是VF6的优点也是缺点。说是优点,是因为没有这种权限管理,所以使用时既方便又简单。说是缺点,由于没有权限管理,所以安全性不高。数据库一旦建成,什么人都可以进行操作浏览。 二、 SELECT命令基本用法 SELECT命令的基本结构是SELECT...FORM...WHERE,它的含义是输出字段...数据来源...查询条件。在这种固定模式中,可以不要WHERE,但是SELECT和FROM是必备的。 2.1 基本查询 所谓基本查询就是无条件查询,其格式如下: SELECT [ALL | DISTINCT] [<别名>.]<选项>[AS <显示列名>] [, [<别名>.]<选项>[AS <显示列名>...] FROM <表名1> [<别名1>] [, <表名2>[<别名2>...] 其中: ALL 表示输出所有记录,包括重复记录; DISTINCT 表示输出无重复结果的记录; 别名 当选择多个数据库表中的字段时,可使用别名来区分不同的数据表; 显示列名 在输出结果中,如果不希望使用字段名,可以根据要求设置一个名称; 选项 字段名、表达式或函数; 表名 要查询的表。 SELECT命令类似于LIST FIELDS <字段名1> [, <字段名2>...]命令,它指出要输出的列,然后输出结果,但是SELECT命令的功能要强大得多。 【例17】列出学生名单。 SELECT * FROM 学生 结果:学号 姓名 性别 出生日期 专业 入学成绩 贷款否 照片 简历 0103001 郑盈莹 女 03/23/83 外贸 626.5 .T. Gen Memo 0103002 王小艳 女 07/20/83 外贸 641.5 .F. gen Memo 0101019 赵伟 男 04/02/82 中文 450.0 .F . Gen Memo …… 9901109 赵伟 男 04/02/80 中文 450.0 .F . Gen Memo 命令中的*表示输出所有字段,数据来源是“学生.DBF”,表中所有内容以浏览方式显示,以上显示的结果中有两个名叫“赵伟”的同学(中间省略的部分数据请参见表3.1)。 【例18】列出所有学生姓名,去掉重名。 SELECT DISTINCT 姓名 AS ’学生名单’ FROM 学生 结果:学生名单 …… 赵伟 …… 显示的结果中,“赵伟”只出现了一次。 SELECT命令中的选项,不仅可以是字段名,还可以是表达式,例如可以是一些函数,SQL-SELECT命令可操纵的函数很多,表8.4中列出了常用函数。 表8. 4 SQL常用函数 名称 语 法 说 明 名称 语 法 说 明 均值 AVG(<字段名>) 求一列数据的平均值 最小 MIN(<字段名>) 给出列中的最小值 求和 SUM(<字段名>) 给出一列数据的和 最大 MAX(<字段名>) 给出列中的最大值 计数 COUNT(*) 输出查询的行数 【例19】将所有的学生入学成绩四舍五入,只显示学号、姓名和入学成绩。 SELECT学号,姓名,ROUND(入学成绩,0) AS ‘入学成绩’ FROM 学生 结果:学号 姓名 入学成绩 0103001 郑盈莹 627 0103002 王小艳 642 …… 从结果可以看出,所有的入学成绩都已经四舍五入。 注意:这个结果不影响数据库表“学生”中的结果,只是在输出时通过函数计算输出。 【例20】求出所有的学生入学成绩平均分。 SELECT AVG(入学成绩) AS ‘入学成绩平均分’ FROM 学生 结果:入学成绩平均分 571.55 由以上两例可见,人们可以直接通过VF6提供的各种函数在输出时进行计算,便可得到相应的输出结果。 2.2 带条件查询(WHERE) WHERE是条件语句关键字,是可选项,其格式如下: WHIRE <条件表达式1> [AND |OR <条件表达式2>...] 其中:条件表达式可以是单表的条件表达式,也可以是多表之间的条件表达式,表达式用的比较符为:=(等于)、<>、!=(不等于)、==(精确等于)、>(大于)、>=(大于等于)、<(小于)、<=(小于等于)。 条件表达式是子查询的结果集合应满足的条件,如果某行条件为真就包括该行记录。表8.5是条件表达式中关键字的意义和使用方法。 表8. 5 WHERE中的条件关键字 关键字 说 明 ALL 满足子查询中所有值的记录,例如,子查询的结果为{1,2,3,4},记录5中字段1的值等于5,则字段1大于集合中的所有值。如果字段1的值等于{2,3},则就不满足大于条件 用法:<字段><比较符>ALL(<子查询>) ANY 字段中的内容满足一个条件就为真 用法:<字段><比较符>ANY(<子查询>) BETWEEN <字段>的内容在指定范围内 用法:<字段>BETWEEN<范围始值>AND<范围终值> EXISTS 总存在一个值满足条件 用法:EXISTS(<子查询>) IN 字段内容是结果集合或者子查询中的某一部分 用法:<字段>IN<结果集合>或者<字段>IN(<子查询>) LIKE 对字符型数据进行字符串比较,提供两种通配符,即下划线“_”和“%”,匹配0个或多个字符,类似于DOS中的“?”和“*”号 用法:<字段> LIKE <字符表达式> SOME 满足集合中的某一个值 用法:<字段><比较符>SOME(<子查询>) 这种条件筛选的基本要领是:左边是一个字段,右边是一个集合,在集合中测定字段值(谓词演算)是否满足条件。NOT可以与这些谓词演算符号配合使用,得到一个反逻辑。 1.计算字段 【例21】求出计算机专业学生入学成绩平均分。 SELECT 专业,AVG(入学成绩) AS ‘入学成绩平均分’ FROM 学生 WHERE 专业=’计算机’ 结果: 专业 入学成绩平均分 计算机 642.83 2.排除后列出 【例22】列出非计算机专业的学生名单。 SELECT 学号, 姓名,专业 FROM 学生 WHERE 专业<>’计算机’ 结果:学号 姓名 专业 0103001 郑盈莹 外贸 0103002 王小艳 外贸 0101019 赵伟 中文 9901009 克敏敏 中文 0108015 和音 数学 0008035 毛杰 数学 9902010 李丽 英语 9901109 赵伟 中文 以上命令的功能等同于: SELECT 学号, 姓名,专业 ; FROM 学生 WHERE 专业 != ’计算机’ 或SELECT 学号, 姓名,专业 ; FROM 学生 WHERE NOT(专业=’计算机’) 3.IN运算符 【例23】列出数学专业和外贸专业的学生名单。 SELECT 学号, 姓名,专业 FROM 学生 WHERE 专业 IN (’数学’,’外贸’) 结果:学号 姓名 专业 0103001 郑盈莹 外贸 0103002 王小艳 外贸 0108015 和音 数学 0008035 毛杰 数学 在以上命令的功能等同于: SELECT 学号, 姓名,专业 FROM 学生 WHERE 专业 = ’数学’ OR专业 = ’外贸’ 4.BETWEEN运算符 【例24】列出入学成绩在560分到650分之间的学生名单。 SELECT 学号, 姓名,入学成绩 FROM 学生 WHERE 入学成绩 BETWEEN 560 AND 650 结果:学号 姓名 入学成绩 0103001 郑盈莹 626.5 0103002 王小艳 641.5 0108015 和音 587.5 0008035 毛杰 600.5 9909010 欧阳申强 622.5 在以上命令的功能等同于: SELECT 学号, 姓名,专业 FROM 学生 WHERE 入学成绩 > 560 AND 入学成绩 < 650 5.LIKE运算符 【例25】列出所有的姓赵的学生名单。 SELECT 学号, 姓名 FROM 学生 WHERE 姓名 LIKE ’赵%’ 结果:学号 姓名 0101019 赵伟 9901109 赵伟 在以上命令的功能等同于: SELECT 学号, 姓名,专业 FROM 学生 WHERE LEFT([姓名],1) = “赵” 6.IS NULL运算符 【例26】列出所有期末成绩为空值的学生学号和课号。 SELECT 学号, 课号 FROM 成绩 WHERE 成绩 IS NULL 在以上命令中,使用了运算符IS NULL,该运算符是测试字段值是否为空值,在查询时用“字段名 IS [NOT] NULL”的形式,而不能写成“字段名=NULL”或“字段名!=NULL”。 三、上机与练习 思考题 1.简述SQL语言的组成。 2.查询的WHERE条件中,BETWEEN…AND与IN有什么区别?试举例说明。 选择题 1. 不属于数据定义功能的SQL语句是( ) (A) CREATE TABLE (B) CREATE CURSOR (C) UPDATE (D) ALTER TABLE 2. 从数据库中删除表的命令是( ) (A) DROP TABLE (B) ALTER TABLE (C) DELETE TABLE (D) USE 3. 建立表结构的SQL命令是( ) (A) CREATE CURSOR (B) CREATE TABLE (C) CREATE INDEX (D) CREATE VIEW 4. DELETE FROM S WHERE年龄>60语句的功能是( ) (A) 从S表中彻底删除年龄大于60岁的记录 (B) S表中年龄大于60岁的记录被加上删除标记 (C) 删除S表 (D) 删除S表的年龄列 5. UPDATE-SQL语句的功能是( ) (A) 属于数据定义功能 (B) 属于数据查询功能 (C) 可以修改表中某些列的属性 (D) 可以修改表中某些列的内容 6. SELECT-SQL语句是( ) (A) 选择工作区语句 (B) 数据查询语句 (C) 选择标准语句 (D) 数据修改语句 7. 关于INSERT-SQL语句描述正确的是( ) (A) 可以向表中插入若干条记录 (B) 在表中任何位置插入一条记录 (C) 在表尾插入一条记录 (D) 在表头插入一条记录 填空题 1. 用SQL语句建立表结构时,可以定义完整性规则。用(1)子句定义表的主索引和索引标识,用(2)子句定义表的外码和对照表。 2. 在VF6支持的SQL语句中,(1)命令可以向表中输入记录,(2)命令可以检查和查询表中的内容。 3.在VF6支持的SQL语句中,(1)命令可以修改表中数据,(2)命令可以修改表结构。 4. 在ALTER-SQL语句中,(1)子句用于修改列的性质,(2)子句用于增加列。 5. 在VF6支持的SQL语句中,(1)命令可以从表中删除行,(2)命令可以从数据库中删除表。 6. 在SELECT-SQL语句中,定义一个区间范围的特殊运算符是(1),检查一个属性值是否属于一组值中的特殊运算符是(2)。 7. 在SELECT-SQL语句中,字符串匹配运算符用(1),匹配符(2)表示零个或多个字符,(3)表示任何一个字符。 8. ______语言是关系型数据库的标准语言。 上机实验 一、测试所有电子讲义和书中的例子。 二、用命令语句实现以下功能: 1. 在“设备管理”项目中,建立设备管理数据库的“备份”库,并用表结构复制命令建立“设备备份”,用CREATE-SQL命令其它两个备份表;且设备备份表中的设备编号字段为主码;人员备份表中的职工号字段为主码;设备状态备份表中设备型号+职工号为主码,设备型号参照设备备份表外码,职工号参照人员备份表外码,收费金额字段允许为空值。 2. 用APPEND FROM命令,保证设备表和设备备份表、人员表和人员备份表的数据一致;用INSERT-SQL语句向设备状态备份表中插入记录。 3. 用UPDATE-SQL将设备编号为00004的收费为空值。 4. 为人员备份表加一列“保底工资”。 5. 修改人员备份表,使市场部的保底工资为800元。 6. 列出市场部所有人员的职工号和姓名。 7. 列出所有产地为美国的设备编号、设备名称和设备型号。 8. 统计部门个数。
本文档为【SQl语句(1)】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
该文档来自用户分享,如有侵权行为请发邮件ishare@vip.sina.com联系网站客服,我们会及时删除。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。
本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。
网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
下载需要: 免费 已有0 人下载
最新资料
资料动态
专题动态
is_182377
暂无简介~
格式:doc
大小:116KB
软件:Word
页数:11
分类:互联网
上传时间:2013-06-26
浏览量:42