当前位置:首页 > J2EE课后习题题解
习 题 4
一、选择题
1.在Transact-SQL语句中,删除表中数据的命令是( )。 A.DELETE B.DROP C.CLEAR D.REMOVE 2.在SQL Server2005中,更新表中数据的命令是( )。 A.USE B.SELECT C.UPDATE D.DROP 3.以下关于外键和相应的主键之间的关系的说法中,正确的是( )。 A.外键不一定要与相应的主键同名 B.外键一定要与相应的主键同名
C.外键一定要与相应的主键同名而且唯一
D.外键一定要与相应的主键同名,但并一定唯一
4.在Transact-SQL语句中,修改表结构时应使用的命令是( )。 A.UPDATE B.INSERT C.ALTER D.MODIFY 5.要限制输入到列中的值范围,应使用( )约束。 A.CHECK B.PRIMARY KEY C.FOREIGN KEY D.UNIQUE
二、思考题
1.什么是数据的完整性?数据完整性有哪些分类? 2.数据约束有哪几种?分别实现何种数据完整性? 3.默认值对象和默认约束有何区别? 4.规则是什么?规则的作用是什么? 5.什么是NULL值?它与0有何区别? 6.如何删除默认值对象?
参考答案: 一、选择题 1-A 2-C 3-A 4-C 5-A
二、思考题
1.数据的完整性是指数据的精确性和可靠性,主要用于保证数据库中数据的质量。它是为防止数据库中存在不符合语义规定的数据和防止因错误信息的输入/输出造成无效操作或报错而提出的。 2.
约束类型 Default(默认值约束) Check(检查约束) Primary Key(主键约束) Unique(唯一性约束) Foreign Key(外键约束) 实现数据的完整性 域完整性 实体完整性 参照完整性
3.默认值对象是一种数据库对象,在数据库中创建默认值对象后,可以将其绑定到多个数据表的一个或多个列的应用;默认值约束只能用于约束一个表中的列。
4.规则(Rule)就是对存储在表中列或用户自定义数据类型的取值范围的规定或限制。
作用:规则类似于CHECK约束,是用来限制数据字段的输入值的范围,实现强制数据的域完整性。 5.NULL是一个特殊值,表示没有值或值不确定。实际上,空字符和0都不是NULL,空字符是一个有效的字符,0是一个有效的数字。
6.第一步:解绑默认值:对于不需要再利用默认的列,可以利用系统存储过程对其解绑。其语法格式如下:
[EXECUTE] sp_unbindefault '表名.字段名'|'自定义数据类型名' 第二步:在查询分析器中使用DROP语句删除默认值。其语法格式如下:
DROP DEFAULT default_name[,…n]
习 题 5
一、选择题 1.在Transact-SQL语句中,条件“年龄 BETWEEN 15 AND 35”表示年龄在15岁至35岁之间,且( )。 A.包括15岁和35岁 B.不包括15岁和35岁 C.包括15岁但不包括35岁 D.包括35岁但不包括15岁 2.下列聚合函数中正确的是( )。 A.SUM(*) B.MAX(*) C.COUNT(*) D.AVG(*) 3.查询员工工资信息时,结果按工资降序排列,下列语句中正确的是( )。 A.ORDER BY 工资 B.ORDER BY 工资 DESC C.ORDER BY 工资ASC D.ORDER BY 工资 DISTINCT 4.在SQL Server2005中,下列关于通配符的操作中,范围最大的是( )。
A.sname LIKE ?abc#? B.sname LIKE ?abc_d%? C.sname LIKE ?abc%? D.sname LIKE ??c%? 5.“SELECT 工号 FROM 员工表 WHERE 工资>1250”的功能是( ) A.查询工资大于1250元的记录 B.查询1250号记录后的记录 C.检索所有的职工号
D.从“职工”关系中检索工资大于1250元的职工号
二、思考题:
1.在SELECT语句中可以存在哪几个子句?他们的作用分别是什么? 2.在表与表之间可以使用哪几种连接方式?它们各自有何特点? 3.LIKE匹配字符有哪几个?
4.有几种连接表的方法?它们之间有什么区别?
5.GROUP BY子句的作用是什么?HAVING子句和WHERE子句中的条件有什么不同? 6.嵌套查询与相关子查询有何区别?
参考答案: 一、选择题 1A 2-C 3-B 4-D 5-D
二、思考题
1.SELECT语句中可以存在以下子句 (1)SELECT子句:指定查询返回的列。
(2)INTO子句:将检索结果存储到新表或视图中。 (3)FROM子句:用于指定查询列所在的表和视图。 (4)WHERE子句:指定用于限制返回的行的搜索条件。
(4)GROUP BY子句:指定用来放置输出行的组。并且如果 SELECT 子句
(5)HAVING子句:指定组或聚合的搜索条件。HAVING 通常与 GROUP BY 子句一起使用。 (6)ORDER BY子句:指定结果集的排序。 2.(1)交叉连接:又称笛卡儿积,返回两个表的乘积。 (2)内连接:把两个表中的数据,通过相同的列,连接生成第3个表,仅包含那些满足连接条件的数据行。内连接分为等值连接、非等值连接和自然连接。 (3)外连接:分类:左外连接、右外连接和全外连接。
左向外连接:只包括左表的所有行,不包括右表的不匹配行的外连接; 右向外连接:只包括右表的所有行,不包括左表的不匹配行的外连接。
完整外部连接:既包括左表不匹配的行,也包括右表的不匹配的行的连接
3.LIKE匹配字符(通配符): %(百分号):表示0~n个任意字符。 _(下划线):表示单个任意字符。 [ ](封闭方括号):表示方括号内列出的任意字符。 [^ ] :表示未在方括号内列出的恶人一字符。 4.参考第2题
5.GROUP BY子句指定用来放置输出行的组,如果需要按某一列数据的值进行分类,在分类的基础上再进行查询,就要使用GROUP BY子句。 HAVING子句指定组或聚合的搜索条件。HAVING 只能与 SELECT 语句一起使用。HAVING通常在GROUP BY 子句中使用。如果不使用GROUP BY 子句,则 HAVING的行为与WHERE 子句一样。 WHERE子句是从表格的数据集中(未分组)过滤出符合条件的行。
6.在SQL中,将一条SELECT语句作为另一条SELECT语句的一部分称为嵌套查询。外层的SELECT语句被称为外部查询或父查询,内层的SELECT语句成为内部查询或子查询。 相关子查询不同嵌套子查询,相关子查询的查询条件依赖于外层查询的某个值。
共分享92篇相关文档