(附答案)数据库期中考试复习题目汇总
- 格式:doc
- 大小:197.50 KB
- 文档页数:21
数据库期中试题及答案苏州科技学院数据库原理与设计试卷一、单选题(1*20=20分)1、DBMS 是DA.数据库B.操作系统C.数据库系统D.数据库管理系统2、下述哪一条不在DBA(数据库管理员)职责范围内 D 。
A.监督和控制数据库的运行B.参与数据库及应用程序设计C.设计数据库的存储策略D.设计数据库管理系统DBMS3、模式的逻辑子集通常称为(C)A.存储模式B.内模式C.外模式D.模式4、用二维表结构表示实体以及实体间联系的数据模型称为BA 层次数据模型B 关系数据模型C 网状数据模型D 树状数据模型5、下列哪一条不属于概念模型的特点D。
A.对现实世界的真实反映B.易于交流和理解C.易于变动D.在计算机实现效率高6、表之间一对多关系是指_B_____。
A.一张表与多张表之间的关系B.一张表中的一个记录对应另一张表中的多个记录C.一张表中的一个记录对应多张表中的一个记录D.一张表中的一个记录对应多张表中的多个记录7、一辆汽车由多个零部件组成,且相同的零部件可适用于不同型号的汽车,则汽车实体集与零部件实体集之间的联系是( D )A. 1:1B. 1:MC. M:1D. M:N8、设计数据库时首先应该设计 C 。
A.数据库应用系统结构B.DBMS结构C.数据库的概念结构D.数据库的控制结构9、概念设计的主要目标是产生数据库概念结构,该结构主要反映(D )A.DBA管理信息的需求B.数据库的维护需求C.应用程序开发的需求D.企业的信息需求10、设属性A是关系R的主属性,则属性A不能取空值,这是 AA.实体完整性规则B.参照完整性规则C.用户自定义完整性规则D.表完整性规则11、设关系R和S分别有m和n个元组,则R×S的元组个数是(D)A.m B.n C.m+n D.m×n12、下面不是SQL语言优点的是(D )A.语言简练,易学易用B.高度非过程化C.数据独立性好D.能方便地生成报表13、.取出关系中的某些列,并消去重复的元组的关系运算称为( B )。
数据库复习题# 数据库复习题## 一、选择题1. 数据库管理系统(DBMS)的主要功能是:A. 数据存储B. 数据处理C. 数据安全D. 数据管理2. 关系型数据库中,数据以什么形式组织?A. 树形结构B. 网状结构C. 表格形式D. 层次结构3. SQL语言中的“SELECT”语句用于:A. 插入数据B. 更新数据C. 查询数据D. 删除数据4. 在数据库设计中,规范化的目的是:A. 提高查询速度B. 减少数据冗余C. 增加数据安全性D. 简化数据结构5. 数据库事务的四大特性是:A. 原子性、一致性、隔离性、持久性B. 可扩展性、可维护性、可移植性、可用性C. 并发性、一致性、可靠性、安全性D. 原子性、一致性、完整性、持久性## 二、填空题1. 数据库的三级模式结构包括:_______、_______和_______。
2. 在数据库中,_______是最小的数据单位,_______是数据库中数据的最小存储单位。
3. 数据库的完整性约束包括:_______、_______、_______和_______。
4. 数据库的并发控制主要包括:_______、_______和_______。
5. 数据库备份的类型包括:_______、_______和_______。
## 三、简答题1. 简述数据库的三大范式,并说明它们各自的作用。
2. 解释什么是数据库的索引,并说明索引对数据库性能的影响。
3. 描述数据库的恢复机制,并举例说明其在实际应用中的重要性。
## 四、论述题1. 论述数据库设计过程中,如何平衡数据的规范化与反规范化?2. 讨论数据库安全性的重要性,并提出几种常见的数据库安全措施。
## 五、应用题1. 假设你正在设计一个图书馆管理系统的数据库,请列出至少五个实体,并为每个实体列出至少三个属性。
2. 给出一个SQL查询语句,用于检索所有借阅了书籍的读者的姓名和借阅日期。
## 六、案例分析题1. 分析以下SQL语句的执行逻辑,并指出可能存在的问题:```sqlSELECT * FROM Orders WHERE OrderDate BETWEEN '2023-01-01' AND '2023-01-31';```2. 考虑一个电子商务网站数据库,讨论如何设计其数据库以支持高并发的用户访问和数据一致性。
2023—2024下 2204班《MySQL数据库技术及应用》期中试卷一、单选题(2分*30=60分)1. select * from student 该代码中的* 号,表示的正确含义是( C )A. 普通的字符*号B. 错误信息C. 所有的字段名D. 模糊查询2. 数据库简称什么?( A )A.DBB.DBSC.DBMSD.DBA3. 数据库管理系统简称什么?( C )A.DBB.DBSC.DBMSD.DBA4. MySQL是哪种数据模型的数据库管理系统?( C )A.层次模型B.网状模型C.关系模型D.对象模型5. 下列描述正确的是( B )A. 一个数据库只包含一个数据表B. 一个数据库可以包含多个数据表C. 一个数据库只包含两个数据表D. 一个数据表可以包含多个数据库6. Mysql支持的数据类型,主要分成(C)类A. 1B. 2C. 3 D 47. 显示当前存在的数据库,正确的是(C)A. show databaseB. use databaseC. show databasesD. select database8. Create database mydb该代码的功能是(B)A. 创建表MYDBB. 创建数据库MYDBC. 修改数据库MYDBD. 删除数据库MYDB9. drop database MyDB001 该代码的功能是( B)A. 修改数据库名为MyDB001B. 删除数据库MyDB001C. 使用数据库MyDB001D. 创建数据库MyDB001 10. 下列(B)类型不是MySQL中常用的数据类型。
A.INT B. VAR C. TIME D. CHAR11. 36属于( C )A. 字符串型B. 浮点型C. 数字类型D. 日期和时间类型12. “abc”属于(A)A. 字符串型B. 整型C. 数字类型D. 日期和时间类型13. 删除字段正确的语句是(C)A. alter table ….. modify …….B. alter table ….. change …….C. alter table ….. drop …….D. alter table ….. add …….14. 查看数据库中数据表列表的命令是(B)A. show table;B. show tables;C. show databases;D. show database;15. 假设一个书店用(书名书号作者出版社出版日期库存数量……)一组属性来描述图书,可以作为“关键字”的是( A )A. 书号B. 书名C. 作者D. 出版社16. Sql语句中修改表结构的命令是(C)A. MODIFY TABLEB. MODIFY STRUCTUREC. ALTER TABLED. ALTER STRUCTURE17. 在create table 语句中,通常使用(D)关键字来指定主键。
《数据库原理》期中小测试一、选择题。
(15题*4分)1、在ER图中,用来表示实体的图形是( )A. 矩形框B. 椭圆C. 直线D. 菱形2、列值为空值(NULL),则说明这一列:()A、值为0B、值为空格C、值是未知的D、值是非法的3、当使用INSERT语句往数据库表中插入一行数据时,在主键列值上如果出现重复值,那么会产生的情况是()。
A、出错,操作失败B、操作成功C、操作成功,但要给出警告信息D、自动把数据行的主键列值更改为没有重复的列值后在插入,操作成功4.在建立一个数据库表时,如果规定某一列的缺省值为0,则说明()A、该列的数据不可更改B、当插入数据行时,必须指定该列值为0C、当插入数据行时,如果没有指定该值,那么该列值为0D、当插入数据行时,无须显式指定该列值5、SQL Server的系统管理员的用户名为()A. dbaB. saC. adminD. administrator6、在一个查询中,使用()关键字能够除去重复列值。
A、distinctB、topC、havingD、desc7、在ORDER BY子句中,如果没有指定ASC(升序)或者DESC(降序)的话,那么缺省的情况是()A、ascB、descC、asc或者desc中的任何一个D、不进行排序8、在关系数据库中,关系之间的联系是靠()处理的。
A.连接字段值B.表格C.记录D.属性9、以下描述中不属于关系的性质的是:( )A. 列是同质的,即每一列中的分量是同类型的数据,来自同一个值域B. 行的顺序是无关紧要的,即行的次序可以任意交换C. 列的顺序不可以任意交换D. 每一个分量都必须是不可分的最小数据项10、五种基本关系代数运算是()A. ∪,-,×,π和σB. ∪,-,∞,π和σC. ∪,∩,×,π和σD. ∪,∩,∞,π和σ11、当关系R和S自然联接时,能够把R和S原该舍弃的元组放到结果关系中的操作是()A. 左外联接B. 右外联接C. 并操作D. 外联接12、SQL中,下列涉及空值的操作,不正确的是()A. AGE IS NULLB. AGE IS NOT NULLC. AGE = NULLD. NOT (AGE IS NULL)13、关系代数表达式σ2<5(S)表示()A.表示从S关系中挑选2的值小于第5个分量的元组B.表示从S关系中挑选第2个分量值小于5的元组C.表示从S关系中挑选第2个分量值小于第5个分量的元组D.表示从S关系中挑选第5个分量值大于2的元组14、关系代数中的Π(投影)运算符对应SELECT语句中的以下哪个子句?()A.SELECTB.FROMC.WHEHED.GROUP BY15、下列SQL语句中,能够实现“收回用户ZHAO对学生表(STUD)中学号(XH)的修改权”这一功能的是()A.REVOKE UPDATE(XH) ON TABLE FROM ZHAOB.REVOKE UPDATE(XH) ON TABLE FROM PUBLICC.REVOKE UPDATE(XH) ON STUD FROM ZHAOD.REVOKE UPDATE(XH) ON STUD FROM PUBLIC二、简答题。
江苏科技大学《数据库应用技术》期中测验试卷一、选择题(从下列每题的四个选择中选择一个正确的答案。
每小题2分,共20分)1.下述()不是DBA(数据库管理员)的主要职责。
DA.完整性约束说明B.定义数据库模式C.数据库安全D.数据库管理系统设计2.关系数据模型是目前最重要的一种数据模型,它的三个要素分别为()。
BA.实体完整、参照完整、用户定义完整B.数据结构、关系操作、完整性约束C.数据增加、数据修改、数据查询D.外模式、模式、内模式3.一个公司有若干兼职人员,而每个兼职人员都有可能在多家公司打工,则公司与兼职人员之间具有()。
CA.一对一联系B.一对多联系C.多对多联系D.多对一联系4.在关系代数运算中,五种基本运算为()。
AA.并、差、选择、投影、自然连接B.并、差、交、选择、投影C.并、差、选择、投影、乘积D.并、差、交、选择、乘积5.在SQL中,与关系代数中的投影运算对应的子句是()。
BA.WHERE B.SELECTC.FROM D.ORDER BY6.在关系数据库中,要求基本关系中的所有主属性上不能有空值,其遵守的约束规则是()。
BA.数据依赖完整性规则B.实体完整性规则C.用户定义完整性规则D.域完整性规则7.在关系数据库系统中,为了简化用户的查询操作,而又不增加数据的存储空间,常用的方法是创建()。
CA.另一个表B.游标C.视图D.索引8.有一个关系:学生(学号,姓名,系别),规定学号的值域是8个数字组成的字符串,这一规则属于()。
AA.用户自定义完整性约束B.参照完整性约束C.实体完整性约束D.主键完整性约束9.为了对表中的各行进行快速访问,应对此表建立()。
DA.约束B.规则C.视图D.索引10.数据库管理系统通常提供授权功能来控制不同用户访问数据的权限,这主要是为了实现数据库的()。
DA.可靠性B.一致性C.完整性D.安全性二、名词解释题(每小题5分,共25分)1.DBMS数据库管理软件是位于用户和操作系统之间的一层数据管理软件,功能如下:数据定义功能;数据操纵功能;数据库的运行管理;数据库的建立和维护功能。
一、单选题1、侯选码中的属性称为(B )。
A.非主属性B.主属性C.复合属性D.关键属性2、( A )是位于用户和操作系统之间的数据管理软件。
A.DBMS B.DB C.DBS D.DBA3、关系数据库中的码是指( D )。
A.能唯一决定关系的字段B.不可改动的专用保留字C.关键的很重要的字段D.能唯一标识元组的属性或属性集合4、关系规范化的实质是针对( b )进行的。
A.函数B.函数依赖C.范式D.关系5、设有属性A,B,C,D,以下表示中不是关系的是( C )A.R(A)B.R(A,B,C,D)C.R(A×B×C×D)D.R(A,B)6、数据库概念设计的E-R方法中,用属性描述实体的特征,属性在E-R图中,用( D )表示。
A.矩形B.四边形C.菱形D.椭圆形6、数据库概念设计的E-R方法中,实体在E-R图中,用( A )表示。
A.矩形B.四边形C.菱形D.椭圆形6、数据库概念设计的E-R方法中,实体与实体之间的联系在E-R图中,用( C )表示。
A.矩形B.四边形C.菱形D.椭圆形7、自然连接是构成新关系的有效方法。
一般情况下,当对关系R和S使用自然连接时,要求R和S含有一个或多个共有的( D )。
A.元组B.行C.记录D.属性8、若将下图所示的E-R图转换成关系模式,可以转换成( C )关系模式。
A. 1个B.2个C.3个D.4个9、若将下图所示的E-R图转换成关系模式,可以转换成( B )关系模式。
A. 1个B.2个C.3个D.4个10、若将下图所示的E-R图转换成关系模式,可以转换成( D )关系模式。
A. 1个B.2个C.3个D.4个11、数据库的层次模型应满足的条件是( C )。
A.允许一个以上的结点无双亲,也允许一个结点有多个双亲B.必须有两个以上的结点C.有且仅有一个结点无双亲,其余结点都只有一个双亲D.每个结点有且仅有一个双亲12、数据库的网状模型应满足的条件是( A )。
《数据库原理与应用》一.单项选择题(每题1分,共20分)1.目前市场上常见的DBMS 90%以上都是基于( C )数据模型的。
A.层次B.网状C.关系D.面向对象2.E-R图是在数据库设计中用来表示( A )的一种常用方法。
A.概念模型B.逻辑模型C.物理模型D.面向对象模型3.( C )是数据库中全体数据的逻辑结构和特征的描述,是所有用户的公共数据视图。
A.外模式B.内模式C.模式D.概念模式4.( B )也称存储模式,是数据库物理结构和存储方式的描述,是数据在数据库内部的表示方式。
A.外模式B.内模式C.模式D.概念模式5.数据库的概念模型独立于(A )。
A.具体的机器和DBMS B.E-R图C.信息世界D.现实世界6.在数据库中存储的是( C )。
A.数据B.数据库模型C.数据以及数据之间的联系D.信息7.规范化理论是关系数据库进行逻辑设计的理论依据,根据这个理论,关系数据库中的关系必须满足:其每一个属性都是(B )。
A.互不相关的B.不可分解的C.长度可变得D.互相关联的8.在数据模型中有“型”和“值(或实例)”两个对应的概念。
其中数据库的模式是一个(D )的概念,是一个相对()的概念,而数据库在某一时刻的状态则是一个()的概念,是一个相对()的概念。
A.型;变化;值;不变B.值;不变;型;变化C.值;变化;型;不变D.型;不变;值;变化9.关系表A的属性个数为5,元组个数为10;关系表B的属性个数为6,元组个数为20.则A与B的笛卡尔积A×B的属性有( D )个,元组个数有()个。
A.30;200B.11;30 C.30;30D.11;20010.父亲和子女的亲生关系属于( B )的关系。
A.1:1B.1:n C.m:n D.不一定11.在SQL语言中,删除关系表中的一个属性列,要用动词( D ),删除关系表中的一行或多行元组,要用动词()。
A.delete,delete B.drop,drop C.delete,drop D.drop,delete12.在SQL语言中,为关系模式增加一个属性要用动词(B),为关系表增加一行或多行元组要用动词()。
数据库期中考试一试题第一部分选择题1、要保证数据库的逻辑数据独立性,需要改正的是||A||。
A:模式与外模式之间的映照B:模式与内模式之间的映照C:模式D:三级模式2、数据库系统的数据独立性表此刻||B||。
A:不会由于数据的变化而影响到应用程序B:不会由于数据储存构造与数据逻辑构造的变化而影响应用程序C:不会由于储存策略的变化而影响储存构造D:不会由于某些储存构造的变化而影响其余的储存构造3、关系数据模型是当前最重要的一种数据模型,它的三个因素分别是||B||。
A:实体完好性、参照完好性、用户自定义完好性B:数据构造、关系操作、完好性拘束C:数据增添、数据改正、数据查问D:外模式、模式、内模式4、||B|| 的存取路径对用户透明,进而拥有更高的数据独立性、更好的安全保密性,也简化了程序员的工作和数据库开发成立的工作。
A:网状模型B:关系模型C:层次模型D:以上都有5、要保证数据库的数据独立性,需要改正的是||C||。
A:模式与外模式B:模式与内模式C:三级模式之间的两层映照D:三层模式6、观点模型是现实世界的第一层抽象,这一类模型中最有名的模型是||D||。
A:层次模型B:关系模型C:网状模型D:实体 - 关系模型7、下述 ||D||不是DBA数据库管理员的职责。
A:完好性拘束说明B:定义数据库模式C:数据库安全D:数据库管理系统设计8、下边列出的数据库管理技术发展的三个阶段中,没有特意的软件对数据进行管理的是||D|| 。
I .人工管理阶段II.文件系统阶段III.数据库阶段A:I 和IIB:只有 IIC:II 和 IIID:只有 I9、数据库( DB)、数据库系统(DBS)和数据库管理系统(DBMS)三者之间的关系是||A||。
A:DBS 包含 DB和 DBMSB:DBMS 包含 DB和 DBSC:DB 包含 DBS和 DBMSD:DBS 包含 DB,也就是 DBMS10、在数据管理技术的发展过程中,经历了人工管理阶段、文件系统阶段和数据库系统阶段。
2023级数据库期中考试(高一下)一、选择题1. 如果需要关闭当前表,应使用的命令是() [单选题] *A. APPENDB. USEC. USE IN(正确答案)D. MODIFY STRU2. 要显示表中当前一条记录的内容,可使用命令() [单选题] *A. LISTC. TYPEB. BROWSED. DISPLAY(正确答案)3. 在当前表中,查找第2个女同学的记录,应使用命令() [单选题] *A. LOCATE FOR 性别="女"B. LOCATE FOR 性别="女" NEXT 2C. LIST FOR 性别="女", CONTINUED LOCATE FOR 性别="女", CONTINUE(正确答案)4. 表结构中空值(NULL)的含义是() [单选题] *A. 空格B.尚未确定(正确答案)C. 默认值D. 05. 自由表和数据库表的字段名可允许的最大字符数分别是()。
[单选题] *A. 128、128B. 10、128(正确答案)C. 10 、10D. 128、106. 如果一个表有备注型字段和通用型字段,那么它们的内容() [单选题] *A. 存储在不同的表备注文件中C. 都存储在同一表备注文件中(正确答案)B. 存储在同一文本文件中D. 存储在不同的文本文件中7. 顺序执行下列命令后,最后一条命令显示的结果是(假设XSB.dbf中有 20 条记录)()。
USE XSB,GO 10,SKIP 2,SKIP -6,?RECNO [单选题] *A. 5B. 6(正确答案)C. 7D. 88. 在当前数据表中,“婚否”字段为逻辑型字段,要显示所有未结婚的记录应使用命令错误的是()。
[单选题] *A. LIST FOR.NOT. 婚否C. LIST FOR 婚否<>.T.B. LIST FOR 婚否=.F.D. LIST FOR.NOT. "婚否"(正确答案)9. 若当前数据库表中有100条记录,当前记录号为10,执行命令 LIST NEXT 4 的结果是()。
一、选择题.(题*分)、在图中,用来表示实体地图形是( ). 矩形框. 椭圆. 直线. 菱形资料个人收集整理,勿做商业用途、列值为空值(),则说明这一列:()、值为、值为空格、值是未知地、值是非法地、当使用语句往数据库表中插入一行数据时,在主键列值上如果出现重复值,那么会产生地情况是().资料个人收集整理,勿做商业用途、出错,操作失败、操作成功、操作成功,但要给出警告信息、自动把数据行地主键列值更改为没有重复地列值后在插入,操作成功.在建立一个数据库表时,如果规定某一列地缺省值为,则说明()、该列地数据不可更改、当插入数据行时,必须指定该列值为、当插入数据行时,如果没有指定该值,那么该列值为、当插入数据行时,无须显式指定该列值、地系统管理员地用户名为(). . . . 资料个人收集整理,勿做商业用途、在一个查询中,使用()关键字能够除去重复列值.、、、、、在子句中,如果没有指定(升序)或者(降序)地话,那么缺省地情况是()资料个人收集整理,勿做商业用途、、、或者中地任何一个、不进行排序、在关系数据库中,关系之间地联系是靠()处理地..连接字段值.表格.记录.属性、以下描述中不属于关系地性质地是:( ). 列是同质地,即每一列中地分量是同类型地数据,来自同一个值域. 行地顺序是无关紧要地,即行地次序可以任意交换. 列地顺序不可以任意交换. 每一个分量都必须是不可分地最小数据项、五种基本关系代数运算是(). ∪,,×,π和σ. ∪,,∞,π和σ. ∪,∩,×,π和σ. ∪,∩,∞,π和σ资料个人收集整理,勿做商业用途、当关系和自然联接时,能够把和原该舍弃地元组放到结果关系中地操作是(). 左外联接. 右外联接. 并操作. 外联接、中,下列涉及空值地操作,不正确地是().... ( )资料个人收集整理,勿做商业用途、关系代数表达式σ<()表示().表示从关系中挑选地值小于第个分量地元组.表示从关系中挑选第个分量值小于地元组.表示从关系中挑选第个分量值小于第个分量地元组.表示从关系中挑选第个分量值大于地元组、关系代数中地Π(投影)运算符对应语句中地以下哪个子句?()、下列语句中,能够实现“收回用户对学生表()中学号()地修改权”这一功能地是()资料个人收集整理,勿做商业用途()()()()二、简答题.、设有两个关系(,,) 和(,,),试用查询语句表达下列关系代数表达式π,(σ (∞)).(题*分)资料个人收集整理,勿做商业用途,,、现有如下图所示地关系数据库用语言实现下列)—)小题:(题*分)). 把对职工关系地查询权限给用户.职工)检索在广州地供应商信息* 供应商地址'广州')插入一个新地职工元组(,,)职工('',''))删除仓库号为""地仓库.仓库仓库号'')给低于所有职工平均工资地职工提高地工资职工工资工资*工资<( (工资) 职工))求所有职工地工资都多于地仓库地平均面积. (面积) 仓库仓库号( 仓库号职工工资<)。
- 1 - 《数据库概论》课程期中复习题目汇总 一、为某百货公司设计一个E-R模型。 百货管辖若干个连锁商店,每家商店经营若干商品,每家商店有若干职工,但每个职工只能服务于一家商店。 实体类型“商店”的属性有:商店编号,店号,店址,店经理。实体类型“商品”的属性有:商品编号,商品名,单价,产地。实体类型“职工”的属性有:职工编号,职工名,性别,工资。在联系中应反映出职工参加某商店工作的开始时间,商店销售商品的有销售量。 试画出反映商店、商品、职工实体类型及联系类型的ER图,并将其转换成关系模式集。
二、关系代数 设有三个关系: S(S#,SNAME,AGE,SEX) SC(S#,C#,GRADE) C(C#,CNAME,TEACHER) 说明:S#——学号 SNAME——学生姓名 AGE——年龄 SEX——性别 C#——课程号 CNAME——课程名 TEACHER——教师 GRADE——成绩 试用关系代数写出查询语句。 (1)检索LIU老师所授课程的课程号、课程名。 (2)检索年龄大于23岁的男学生的学号与姓名。 (3)检索学号为S3学生所学课程的课程名与任课教师名。 (4)检索至少选修LIU老师所授课程中一门课程的女学生的姓名。 - 2 -
(5)检索WANG同学不学的课程号。 (6)检索至少选修两门课程的学生学号。 (7)检索全部学生都选修的课程的课程号与学生学号。 (8)检索选修课程包含LIU老师所授课程的学生学号。
(用∞代表自然连接):
(1)πC#,CNAME(σTEACHER='LIU'(C)) (2)πS#,SNAME(σAGE>'23'∧SEX='男'(S)) (3)πCNAME,TEACHER(σS#='S3'(SC∞C)) (4)πSNAME(σSEX='女'∧TEACHER='LIU'(S∞SC∞C)) (5)πC#(C)-πC#(σSNAME='WANG'(S∞SC)) (6)πS#(σ1=4∧2≠5(SC×SC)) (SC自乘之后,同一个学号
下两个课程号不同的元组) (7)πC#,S#(SC∞(πS#,C#(SC)÷πS#(S)))) (8)πS#(σTEACHER='LIU'(S∞SC∞C)) 三、SQL语句(1) 1、建立一个数据库和五张表的表结构。 (1)/*员工人事表employee */ emp_no char(5) Not null primary key 员工编号 emp_name char(10) Not null 员工姓名 sex char(1) Not null 性别 dept char(4) Not null 所属部门 title char(6) Not null 职称 date_hired datetime Not null 到职日 birthday datetime Null 生日 salary int Not null 薪水 addr char(50) null 住址 Mod_date datetime Default(getdate()) 操作者
(2)/*客户表customer */ cust_id char(5) Not null primary key 客户号 cust_name char(20) Not null, 客户名称 addr char(40) Not null, 客户住址 tel_no char(10) Not null, 客户电话 zip char(6) null 邮政编码 - 3 -
(3)/*销售主表sales */ order_no int Not null primary key 订单编号 cust_id char(5) Not null, 客户号 sale_id char(5) Not null, 业务员编号 tot_amt numeric(9,2) Not null, 订单金额 order_date datetime Not null, 订货日期 ship_date datetime Not null, 出货日期 invoice_no char(10) Not null 发票号码
(4)/*销货明细表sale_item */ order_no int Not null, primary key 订单编号 prod_id char(5) Not null, 产品编号 qty int Not null 销售数量 unit_price numeric(7,2) Not null 单价 order_date datetime null 订单日期
(5)/*产品名称表product */ prod_id char(5) Not null primary key 产品编号 prod_name char(20) Not null 产品名称 4、通过T-SQL语句修改表约束。 1)分别为每张表建立主键约束。 2)为相关表建立外键约束。 3)在表employee加入CHECK约束:输入的员工编号必须以E开头的5位数编号,性别只能为M/F。 4)为销售主表sales中的发票编号字段建立UNIQUE约束。 5)创建一个视图,该视图只含上海客户信息,即客户号、客户姓名、住址 6)对视图添加一条记录数据(注意:分别查看customer表和该视图的结果) 7)删除视图中所有姓“王”的客户数据 8)通过视图修改表内某一客户的姓名 9)有两个基本表employee和sales,创建一个视图,该视图包含相同业务员的编号、姓名、订单号、销售总金额 10)将上述视图中订单号为10001的记录的销售总金额改为60000 11)给上述视图添加一条记录数据 12)删除上述视图 (1)建立数据库jianghong create database jianghong on (name='jianghong', filename='E:\数据库\jianghong.mdf', size=3, maxsize=10, filegrowth= 1 ) log on (name='jianghonglog', filename='E:\数据库\jianghonglog.ldf', - 4 -
size=1, maxsize=5, filegrowth=1) go (2)建立数据表 ①创建employee表: create table employee (emp_no char(5) not null primary key, emp_name char(10) not null, sex char(1) not null, dept char(4) not null, title char(6) not null, data_hired datetime not null, birthday datetime null, salary int not null, addr char(50) null, Mod_date datetime Default(getdate()),) ②创建customer表: create table customer (cust_id char(5) not null primary key, cust_name char(20) not null, addr char(40) not null, tel_no char(10) not null, zip char(6) null,) ③创建sales表: create table sales (order_no int not null primary key, cust_id char(5) not null, sale_id char(5) not null, tot_amt numeric(9,2) not null, order_date datetime not null, ship_date datetime not null, invoice_no char(10) not null,) ④创建sale_item表: create table sale_item (order_no int not null , prod_id char(5) not null , qty int not null, unit_price numeric(7,2) not null, order_date datetime null, primary key (order_no,prod_id),) ⑤创建product表: create table product (prod_id char(5) not null primary key, - 5 -
prod_name char(20) not null,) (3)为相关表建立外键约束 ①alter table sales add foreign key (cust_id) references customer(cust_id); ②alter table sale_item add foreign key (order_no) references sales(order_no); ③alter table sale_item add foreign key (prod_id) references product(prod_id); (4)为表employee加入check约束: alter table employee add constraint c1 check(emp_no like 'E____' and (sex='M' or sex='f')); (5)为表sales发票号建立unique约束: alter table sales add unique(invoice_no); (6)创建一个视图,该视图只含上海客户信息,即客户号、客户姓名、住址: create view sh_kehu as select cust_id,cust_name,addr from customer where addr like '上海' 2 (7)删除视图中所有姓“王”的客户数据: DELETE FROM sh_kehu WHERE cust_name LIKE '王%' (8)通过视图修改表内某一客户的姓名 update sh_kehu set cust_name='江洪好' where cust_id='4224' (9)有两个基本表employee和sales,创建一个视图,该视图包含相同业务员的编号、姓名、订单号、销售总金额: create view em_sa as select sale_id,emp_name,order_no,tot_amt from employee,sales where employee.emp_no=sales.sale_id (10)将上述视图中订单号为10001的记录的销售总金额改为60000: update em_sa set tot_amt='60000' where order_no=10001 (11)删除上述视图: drop view em_sa drop view sh_kehu 5、使用SQL语句实现下述查询操作。 1)查找表中所有姓刘的职工的工号,部门,薪水