数据库原理与应用(MySQL版) 第4章 SQL语言基础及基本表的定义 习题参考答案.docx
习题参考答案
第4章SQL语言基础及基本表的定义
选择题
1.下列关于SQL语言特点的叙述,错误的是
A.使用SQL语言访问数据库,用户只需提出做什么,而无需描述如何实现
SQL语言比较复杂,因此在使用上比较难
SQL是非过程化语言
D.使用SQL语言可以完成任何数据库操作
答案:B
2.下列所述功能中,不属于SQL语言功能的是
A.数据库和表的定义功能B.数据查询功能
数据增、删、改功能 D.提供方便的用户操作界面功能
答案:D
3.设某职工表中有用于存放年龄(整数)的列,下列类型中最合适年龄列的是
A.TINYINT B.SMALLINT
MEDIUMINT D.INTEGER
答案:A
4.设某列的类型是CHAR(10),存放“abc”,占用空间的字节数是
A.3B.4
5 D.10
答案:D
5.设某列的类型是VARCHAR(10),存放“abc”,占用空间的字节数是
A.3 B.4
C.5 D.10
答案:B
6.下列约束中用于限制列的取值范围的是
A.PRIMARYKEY B.CHECK
DEFAULT D.UNIQUE
答案:B
7.下列约束中用于限制列取值不重的是
A.PRIMARYKEY B.CHECK
DEFAULT D.UNIQUE
答案:D
8.下列关于DEFAULT约束的说法,正确的是
A.一个DEFAULT约束可用于一个表的多个列上
B.DEFAULT约束只能作为表级完整性约束
C.DEFAULT约束只能作为列级完整性约束
D.DEFAULT约束既可作为表级完整性约束也可作为列级完整性约束
答案:C
二、简答题
SQL语言的特点是什么?具有哪些功能?
答:SQL语言的特点:(1)一体化(2)高度非过程化(3)简洁(4)可以多种方式使用:SQL语言可以直接以命令方式交互使用,也可以嵌入到程序设计语言中使用。
SQL语言具有功能:(1)数据定义、(2)数据查询、(3)数据更改和(4)数据控制。
MySQL提供了哪些主要数据类型?
答:(1)数值类型,包括整数类型和小数类型,小数类型又包括浮点数类型和定点数类型。
(2)字符串类型,包括文本字符串和二进制字符串、ENUM类型、SET类型。
(3)日期时间类型。
SMALLINT类型定义的数据的取值范围是多少?
答:存储从–32768到32767范围的整数,无符号整数的范围是0到65535数。
定点小数类型DECIMAL(M,D)中的M和D的含义分别是什么?
答:M为精度,指定可以存储的十进制数字的最大位数,包括整数部分和小数部分。D为小数位数,指定小数点右边可以存储的十进制数字的最大位数。
CHAR(M)、TINYTEXT、TEXT、MEDIUMTEXT和LONGTEXT的取值范围分别是多少?
答:CHAR(M):M取值范围为0~255。
TINYTEXT:短文本字符串,最大可存储28-1字节。
TEXT:长文本字符串,最大可存储216-1字节。
MEDIUMTEXT:中等长度文本字符串,最大可存储224-1字节。
LONGTEXT:极大文本字符串,最大可存储232-1字节。
ENUM类型和SET类型的区别是什么?
答:SET与ENUM的区别:SET一次可以选取多个成员,而ENUM一次只能选一个。
常见的完整性约束有哪些?各约束的作用是什么?
答:(1)PRIMARYKEY:主键约束。指定本列为主键。
(2)FOREIGNKEY:外键约束。定义本列为引用其他表的外键。
(3)NOTNULL:非空约束。限制列取值非空。
(4)UNIQUE:唯一值约束。限制列取值不能重复。
(5)DEFAULT:默认值约束。指定列的默认值。
(6)AUTO_INCREMENT:自增约束。设置自增属性。
(7)CHECK:列取值范围约束。限制列的取值范围。