数据库sql复习题库4 联系客服

发布时间 : 星期日 文章数据库sql复习题库4更新完毕开始阅读875b648ed0d233d4b14e69d3

2.使用SQL语句创建一个班级表CLASS,属性如下:CLASSNO,DEPARTNO,CLASSNAME;类型均为字符型;长度分别为8、2、20且均不允许为空。 CREATE ________ CLASS

(CLASSNO ______ (8) NOT NULL, DEPARTNO CHAR (2) NOT NULL,

CLASSNAME CHAR (____) NOT NULL

3.声明一个名为CRSCOURSE的游标,并利用游标遍历,显示整个结果集。 USE XK

DECLARE @COUNO VARCHAR(3),@COUNAME VARCHAR(20) _________________________

FOR SELECT COUNO,COUNAME FROM COURSE ORDER BY COUNO _________________________

FETCH NEXT FROM CRSCOURSE INTO @COUNO,@COUNAME WHILE @@FETCH_STATUS=0 BEGIN

PRINT ’课程号:’+ @COUNO +’课程名称:’+ @CouName FETCH NEXT FROM CRSCOURSE INTO @COUNO,@COUNAME END

_________________________ DEALLOCATE CRSCOURSSE

4.使用SQL语句在XK数据库中创建一个名为V_STUDENT的视图,该视图仅查看“STUDENT”表中“00电子商务”班的学生信息。 USE XK

CREATE ____________ V_STUDENT AS

SELECT *

FROM ____________

WHERE CLASSNO=’20000001’

5、删除stu_score表中的外键约束con_num TABLE stu_score

CONSTRAINT con_num

6、为student_info表添加“总学分”列,并为该列建立默认对象df_credit,使其默认值为0 Create df_credit as 0

Alter table student_info add 总学分 real

Exec ‘df_credit’,’student_info.总学分’ 7、创建和执行带有输入和输出参数的存储过程proc_avg,查sc表中输入课程编号的最高分,最低分和平均分。 Create proc proc_avg

@cid char(4),@max_scr int ,@min_scr int output,@avg_scr int output As

Select @max_scr=max(grade),@min_scr=min(grade),@avg_scr= From grade

Where cno=@cid Group by cno 执行:

Declare @maxs int,@mins int,@avgs int

Exec proc_avg ‘3’,@maxs output, ,@avgs output Select @maxs,@mins,@avgs

8. 建立表的命令如下,请补全约束定义。

create table employee

( eno char(5) , --主键

ename varchar(8) ______ --可以为空,但不重名 esex char(2) , --默认值为’女’ eage smallint , --18到60岁之间 item varchar(10) , --非空 dno char(3) foreign key references )

--外键,参照DEPARTMENT表的主码(no)

9.创建SQL SERVER身份认证的登陆账户“stulogin”并进行授权,添加到tech数据库,使其成为数据库用户“stuuser”,然后将其添加到数据库的db_accessadmin角色中,完成下列代码。

EXEC sp_addlogin ‘stulogin’,’12345’,’tech’ USE tech GO

EXEC ‘stulogin’,’stuuser’ EXEC ‘db_accessadmin’, ’stuuser’

10、credit表包括学号sno、课程编号cno、分数、学分列。建立INSERT触发器ins_cr,当为表credit插入记录时,检查分数是否大于等于60,是则从course表取得该分数对应课程的学分,插入表中,否则不插入。 Create trigger ins_cr On credit For insert As Begin

Declare @score int , @credit int

Select @score=分数 from inserted

Select @credit=course.学分 from course, Where course.cno=inserted.cno If Begin

Update credit set 学分=@credit from credit,inserted Where and credit.cno=inserted.cno End End