1、第 6 章习题参考答案 1. 选择最适合的答案。 用哪个选项建立的视图,保证通过视图加到表中的行可以通过视图访问? D A. WHERE B. WITH ENCRYPTION C. WITH CHECK OPTION D. CREATE VIEW 用下列代码建立一个视图,对该视图允许做什么操作? A,B,C,D CREATE VIEW stud_view AS SELECT * FROM stud_info WHERE substring(stud_id,3,2) = 01 A. SELECT B. SELECT, UPDATE C. SELECT, DELETE D. SELECT, INS
2、ERT 建立视图的哪一个选项,将加密 CREATE VIEW 语句的文本? D A. WITH UPDATE B. WITH READ ONLY C. WITH CHECK OPTION D. WITH ENCRYPTION 在 CREATE VIEW 命令中哪个选项将强制所有通过视图修改的数据必须满足代码中的 SELECT 语句中指定的选择条件? A A. WITH CHECK OPTION B. WITH READ ONLY C. WITH NO UPDATE D. 没有这样的选项,假如用户对数据表有权限,用户可以更新视图。 执行哪一个系统存储过程,可以查看视图的定义信息? A A. sp
3、_helptext B. sp_depends C. sp_help D. sp_rename 下列 SQL 语句中哪一行可能出错? C CREATE VIEW stud_view AS SELECT stud_id stud_id, name stud_name FROM stud_info WHERE stud_id = 0401020201 ORDER BY birthday A. 第 5 行 B. 第 2 行 C. 第 6 行 D. 没有错误 2. 按照题目要求写出下列 SQL 命令,并在机器进行测试。 选择学生基本信息表(stud_info)中的学号 ,选择学生 表(stud_gra
4、de)中的试 建一个 stud_view 的视图,该视图中的 必须满足 系 号 01( 机 程系)的条件。 USE student GO CREATE VIEW stud_view AS SELECT a.stud_id, a.name, b.grade FROM stud_info a, stud_grade b WHERE substring(a.stud_id,3,2)=01 选择 基本信息表(teacher_info)中的 号 ,选择 程信息表(lesson_info)中的 程号 course_id 程 course_name 建一个 teacher_view 的视图,该视图中的 必须
5、满足 号 01( 机 用)的条件。 USE student GO CREATE VIEW teacher_view ASSELECT a.teacher_id, a.name, b.course_id, b.course_name FROM teacher_info a, lesson_info b WHERE substring(a.teacher_id,3,2)=01 建一个 tea_view 机 程系学生 机 语的 的视图。视图 的列有学号 。 USE student GO CREATE VIEW tea_view AS SELECT stud_id, name, avg(grade)
6、FROM stud_grade WHERE substring(stud_id,3,2)=01 AND substring(course_id,9,2)=01 下列 SQL 语句的作用。 CREATE VIEW ser_view AS SELECT * FROM stud_info WHERE substring(stud_id,3,2)=04 GO INSERT INTO ser_view VALUES (0404010812,N , 11/02/1986, 2 GO N ,N ,010-64112565,100081,570) SELECT * FROM stud_info 建立一个 程系
7、的视图 ser_view,currency1 ser_view 视图“一条 的数据 ,currency1通过 SELECT 语句查fi stud_info 数据表。 下列 建视图的 SQL 语句中 WITH ENCRYPTION fl句的 用。 CREATE VIEW tee_view WITH ENCRYPTION ASSELECT * FROM teac her_inf o WHERE substring(teacher_id,3,2)=01 执行 EXEC sp_helptext tee_view 命令出什么 ? WITH ENCRYPTION fl句的 用表加密选项执行 EXEC he
8、lptext tee_view 命令出对 tee_view 的文本加密。 ”题。修改 tee_view 视图的定义, WITH ENCRYPTION fl句, 加WITH CHECK OPTION 选项,机行下列命令将出什么? UPDATE tee_view SET teacher_id = 010201 WHERE name = N 将 tee_view 视图中的 teacher_id 更新 010201,将 。 写出建立 系代码表(dept_code) 信息表(staffroom_info) 基本信息表(teacher_info)的视图命令,视图中的列 所 系 所 。 USE student GO CREATE VIEW new_view AS SELECT c.name ,a.deptname 所 系 ,b.jysh_name 所 FROM dept_code a, staffroom_info b, teacher_info c 3