数据库3错题集Word文档格式.docx

上传人:b****2 文档编号:14827500 上传时间:2022-10-25 格式:DOCX 页数:32 大小:30.28KB
下载 相关 举报
数据库3错题集Word文档格式.docx_第1页
第1页 / 共32页
数据库3错题集Word文档格式.docx_第2页
第2页 / 共32页
数据库3错题集Word文档格式.docx_第3页
第3页 / 共32页
数据库3错题集Word文档格式.docx_第4页
第4页 / 共32页
数据库3错题集Word文档格式.docx_第5页
第5页 / 共32页
点击查看更多>>
下载资源
资源描述

数据库3错题集Word文档格式.docx

《数据库3错题集Word文档格式.docx》由会员分享,可在线阅读,更多相关《数据库3错题集Word文档格式.docx(32页珍藏版)》请在冰豆网上搜索。

数据库3错题集Word文档格式.docx

书名CHAR(6),

单价_______(8,2))

CHAR(6)

NUMERIC

题目

对St_Info(学号,姓名,性别,出生日期,专业,班级),将张羽同学所在班级更名为“计算机科学0601班”。

UPDATESt_Info

_______班级=‘计算机科学0601班’

WHERE姓名=‘张羽’

SET

学生”表St_info由学号(sno)、姓名(sname)、性别(ssex)、出生日期(sbirth)、所在系(sd)等属性组成。

将“刘洋”的所在系更改为“法学院”。

UPDATESt_info

_______sd=‘法学院’

WHEREsname=‘刘洋’

“学生”表St_info由学号(sno)、姓名(sname)、性别(ssex)、出生日期(sbirth)、所在系(sd)等属性组成。

现将一个新学生记录(学号:

姓名:

陈红;

性别:

女;

所在系:

外国语学院;

出生日期:

1985-10-23)插入St_info表中,完成以下操作。

_______St_info

VALUES(‘’,‘陈红’,‘女’,1985-10-23,‘外国语学院’)

INSERTINTO

使用下述语句创建表S_C_Info:

CREATETABLES_C_Info

(St_IDCHAR(10)NOTNULL,

C_NOCHAR(10)NOTNULL,

ScoreINTNOTNULL,

PRIMARYKEY(St_ID,C_NO)

执行上述语句后,数据表S_C_Info的主键名是(_______);

语句中NOTNULL的含义是_______。

St_ID,C_NO

非空

数据的完整性主要防范的对象是非法用户。

参考答案错误

删除表时,与该表相关的规则和约束不会被删除。

Transact-SQL语言将数据插入到数据表的语句是INSERTINTO,修改数据的语句是UPDATE。

参考答案正确

数据库5

有表student(学号,姓名,性别,身份证号,出生日期,所在系号),在此表上使用()语句能创建建视图vst。

A.CREATEVIEWvstASSELECT*FROMstudent

B.CREATEVIEWvstONSELECT*FROMstudent

C.CREATEVIEWASSELECT*FROMstudent

D.CREATETABLEvstASSELECT*FROMstudent

参考答案A

不允许记录中出现重复值和NULL值的索引是()。

A.主键索引、普通索引

B.主键索引、候选索引和普通索引

C.主键索引

D.主键索引、候选索引和唯一索引

参考答案C

在关系数据库系统中,为了简化用户的查询操作,而又不增加数据的存储空间,常用的方法是创建()。

A.另一个表

B.游标

C.视图

D.索引

sp_help属于哪一种存储过程()?

A.系统存储过程

B.用户定义存储过程

C.扩展存储过程

D.其他

在SQLSERVER中,执行带参数的过程,正确的方法为()。

A.过程名参数

B.过程名(参数)

C.过程名=参数

D.ABC均可

有教师表(教师号,教师名,职称,基本工资),其中基本工资的取值与教师职称有关。

实现这个约束的可行方案是()。

A.在教师表上定义一个视图

B.在教师表上定义一个存储过程

C.在教师表上定义插入和修改操作的触发器

D.在教师表上定义一个标量函数

参考答案C有教师表(教师号,教师名,职称,基本工资),其中基本工资的取值与教师职称有关。

在SQLServer中,有商品表(商品号,商品号,单价)和销售表(商品号,销售时间,销售价格)。

现要限制“销售价格”的取值必须在此商品“单价”的0.6到1.5倍范围之内,实现这个约束的正确代码是()。

A.

CHECK(销售价格BETWEEN单价*0.6AND单价*1.5)

B.

CHECK(销售价格BETWEEN商品表.单价*0.6AND商品表.单价*1.5)

C.

CREATETRIGGERtri_SalesON销售表

FORINSERT,UPDATEAS

IFEXISTS(SELECT*FROMINSERTEDaJOIN商品表b

ONa.商品号=b.商品号WHERE销售价格NOT

BETWEEN单价*0.6AND单价*1.5)

ROLLBACK

D.

INSTEADOFINSERT,UPDATEAS

IFEXISTS(SELECT*FROMINSERTEDaJOIN商品表b

ONa.商品号=b.商品号

WHERE销售价格NOTBETWEEN单价*0.6AND单价*1.5)ROLLBACK

参考答案D

我的答案C

声明了变量:

DECLARE@iint,@cchar(4)

现在为@i赋值10,@c赋值‘abcd’,正确的语句是()。

A.set@i=10,@c=‘abcd’

B.seti=10,set@c=‘abcd’

C.select@i=10,@c=‘abcd’

D.select@i=10,select@c=‘abcd’

我的答案A

数据库6

用户对数据进行添加、修改和删除时,自动执行的存储过程称为_______。

触发器

SQLServer中的存储过程具有_______、用户自定义存储过程、临时存储过程、远程存储过程、_______5种类型。

系统存储过程

扩展存储过程

创建存储过程实际是对存储过程进行定义的过程,主要包含存储过程名称、_______和存储过程的主体部分。

参数

触发器主要用于强制复杂的业务_______或要求。

规则

在student_db数据库中创建一个名为“tr_P1”的存储过程,实现根据学生学号,查询该学生的选修课程情况,其中包括该学生的学号、姓名、课程名、课程类型、成绩。

CREATE_______tr_P1@stIDvarchar(10)

AS

SELECTSt_Info.St_ID,St_Info.St_Name,C_Info.C_Name,C_Info.C_Type,S_C_Info.Score

FROMSt_Info,S_C_Info,C_Info

WHERESt_Info.St_ID=S_C_Info.St_IDANDS_C_______′0403060111′

PROC

EXECtr_P1

有表C_Info(C_No,C_Name,C_Type,Credit),各属性的含义为课程号、课程名称、课程类别、学分,为该表创建一个触发器tr_AutoSetType,以便插入数据时将课程类别修改为“必修”。

CREATETRIGGERtr_AutoSetTypeONC_Info

_____

UPDATEC_InfoSETC_Type=‘必修’

FORINSERT

某SQLServer数据库中两张表:

商品表(商品号,商品名,商品类型,价格)和销售表(商品号,销售时间,销售数量,销售单价)。

用户需统计指定年份每类商品的销售总数量和销售总利润,要求只列出销售总利润最多的前三类商品的商品类别、销售总数量和销售总利润。

为了完成该统计操作,请按要求将下面的存储过程补充完整。

CREATEPROCp_Sum@yearINT

SELECT(_______)商品类别,SUM(销售数量)AS销售总数量,(_______)AS销售总利润

FROM商品表JOIN销售表ON商品表.商品号=销售表.商品号

WHEREyear(销售时间)=@year

GROUPBY商品类别

ORDERBY销售总利润(_______)

TOP3

(销售单价-成本价)*SUM(销售数量)

第3空:

DESC(降序)

ROLLBACKTRANSACTION的意思是回滚事务。

存储过程的输出结果可以传递给一个变量。

我的答案正确

创建触发器的时候可以不是表的所有者或数据库的所有者。

DML触发器不可通过数据库中的相关表实现级联更改。

每个存储过程向调用方返回一个整数的返回代码值。

如果存储过程没有显式设置返回代码的值,则返回代码为0,表示成功。

若要修改一个存储过程,可以先删除该存储过程,再重新创建。

语句:

EXECsp_helptriggerS_C_Info

的功能是通过系统存储过程S_C_Info查看sp_helptrigger表上存在的触发器的属性信息。

临时存储过程总是在master数据库中创建。

通常分为局部临时存储过程和全局临时存储过程。

像常规触发器一样,DDL触发器将激发存储过程以响应事件。

存储过程是在数据库上定义的,触发器是在特定表上进行定义的。

参考答案正确

CREATETRIGGERDelCourseONC_Info

FORDELETEAS

DELETES_C_InfoWHEREC_NoIN(SELECTC_NoFROMdeleted)

以上语句是用于创建存储过程DelCourse。

使用Transact-SQL语句直接创建触发器的语句中,其中有一个短语

FOR|AFTER|INSTEADOF:

如果仅指定FOR关键字,则AFTER为默认值。

在SQLServer中,触发器的执行通过EXECUTE命令实现。

存储过程可以由用户直接调用执行,但触发器不能直接调用执行,而是SQLServer自动触发执行的。

触发器可以引用当前数据库以外的对象,但只能在当前数据库中创建触发器。

触发器用来定义比CHECK约束更复杂的规则或要求。

参考答案正

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 农林牧渔 > 林学

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1