SQL数据库期末大作业
- 格式:doc
- 大小:1009.00 KB
- 文档页数:15
sql数据库期末考试题与答案一、单项选择题〔共 10 道试题,共 50 分。
〕1. SQL Server中,保存着每个数据库对象的信息的系统表是〔 C〕。
A. sysdatabasesB. SyscolumnsC. SysobjectsD. Syslogs2. 在存在如下关键字的SQL语句中,不可能出现Where子句的是〔D 〕。
A. UpdateB. DeleteC. InsertD. Alter3. 在查询语句的Where子句中,如果出现了“age Between 30 and 40〞,这个表达式等同于〔A 〕。
A. age>=30 and age<=40B. age>=30 or age<=40C. age>30 and age<40D. age>30 or age<404. 如果要在一X管理职工工资的表中限制工资的输入X围,应使用〔D 〕约束。
A. PDRIMARY KEYB. FOREIGN KEYC. uniqueD. check5. 记录数据库事务操作信息的文件是〔D 〕。
A. 数据文件B. 索引文件C. 辅助数据文件D. 日志文件6. 要查询XSH数据库CP表中产品名含有“冰箱〞的产品情况,可用〔 C〕命令。
A. SELECT * FROM CP WHERE 产品名称 LIKE ‘冰箱’B. SELECT * FROM XSH WHERE 产品名称 LIKE ‘冰箱’C. SELECT * FROM CP WHERE 产品名称 LIKE ‘%冰箱%’D. SELECT * FROM CP WHERE 产品名称=‘冰箱’7. 储蓄所有多个储户,储户能够在多个储蓄所存取款,储蓄所与储户之间是〔D 〕。
A. 一对一的联系B. 一对多的联系C. 多对一的联系D. 多对多的联系8. SQL的聚集函数COUNT、SUM、AVG、MAX、MIN不允许出现在查询语句的〔 D〕子句之中。
一、单选题(共 10 道试题,共 50 分。
)V 1. SQL Server中,保存着每个数据库对象的信息的系统表是( C)。
A. sysdatabasesB. SyscolumnsC. SysobjectsD. Syslogs2. 在存在下列关键字的SQL语句中,不可能出现Where子句的是(D )。
A. UpdateB. DeleteC. InsertD. Alter3. 在查询语句的Where子句中,如果出现了“age Between 30 and 40”,这个表达式等同于(A )。
A. age>=30 and age<=40B. age>=30 or age<=40C. age>30 and age<40D. age>30 or age<404. 如果要在一张管理职工工资的表中限制工资的输入范围,应使用(D )约束。
A. PDRIMARY KEYB. FOREIGN KEYC. uniqueD. check5. 记录数据库事务操作信息的文件是(D )。
A. 数据文件B. 索引文件C. 辅助数据文件D. 日志文件6. 要查询XSH数据库CP表中产品名含有“冰箱”的产品情况,可用( C)命令。
A. SELECT * FROM CP WHERE 产品名称 LIKE ‘冰箱’B. SELECT * FROM XSH WHERE 产品名称 LIKE ‘冰箱’C. SELECT * FROM CP WHERE 产品名称 LIKE ‘%冰箱%’D. SELECT * FROM CP WHERE 产品名称=‘冰箱’7. 储蓄所有多个储户,储户能够在多个储蓄所存取款,储蓄所与储户之间是(D )。
A. 一对一的联系B. 一对多的联系C. 多对一的联系D. 多对多的联系8. SQL的聚集函数COUNT、SUM、AVG、MAX、MIN不允许出现在查询语句的( D)子句之中。
sql期末考试题及答案SQL期末考试题及答案一、选择题(每题2分,共20分)1. SQL代表什么?A. Structured Query LanguageB. Simple Query LanguageC. Standard Query LanguageD. Streamline Query Language答案:A2. 在SQL中,用于查询数据的命令是什么?A. SELECTB. INSERTC. UPDATED. DELETE答案:A3. 下列哪个不是SQL的数据类型?A. INTB. CHARC. IMAGED. DATE答案:C4. SQL中的主键约束是什么?A. 唯一性约束B. 非空约束C. 默认值约束D. 检查约束答案:A5. SQL语句中,用于插入数据的命令是什么?A. SELECT INTOB. INSERT INTOC. UPDATED. DELETE答案:B6. 下列哪个不是SQL中的聚合函数?A. COUNTB. AVGC. SUMD. DISTINCT答案:D7. SQL中的外连接是什么?A. INNER JOINB. LEFT JOINC. RIGHT JOIND. OUTER JOIN答案:D8. SQL中的事务是什么?A. 一组SQL语句的集合B. 一个数据库表C. 一个数据库视图D. 一个数据库索引答案:A9. SQL中的视图是什么?A. 一个数据库表B. 一个数据库索引C. 一个虚拟的数据库表D. 一个数据库存储过程答案:C10. SQL中的存储过程是什么?A. 一组预先编写好的SQL语句B. 一个数据库表C. 一个数据库视图D. 一个数据库触发器答案:A二、简答题(每题5分,共30分)1. 解释SQL中的主键和外键的区别。
答案:主键是表中用来唯一标识每条记录的字段,不能有重复值,也不能为NULL。
外键是一个表中的字段,它对应于另一个表的主键,用于维护两个表之间的链接。
SQL部分模拟试题(一)一、单项选择题(本大题共12小题,每小题2分,共24分)1、_____________是负责数据库的建立、使用和维护的软件。
( )A.DB B.DBS C.DBMS D.OS2、根据关系数据基于的数据模型——关系模型的特征判断下列正确的一项:()A、只存在一对多的实体关系,以图形方式来表示。
B、以二维表格结构来保存数据,在关系表中不允许有重复行存在。
C、能体现一对多、多对多的关系,但不能体现一对一的关系。
D、关系模型数据库是数据库发展的最初阶段3、SQLServer的_________是用来启动或停止SQL Server服务。
( )A.查询分析器B.服务管理器C.事件探测器D.企业管理器4、以下不是SQL Server2000数据库文件的类型的是( )A.主要数据文件B.次要数据文件C.系统文件D.事务日志文件5、在视图中不允许包括__________关键字( )A.ORDERBY,COMPUTE,COMPUTRBY B.ORDERBYFROMC.COMPUTEORDERBY D.ORDERBYGROUPBY6、一家航空公司把一年中飞行距离超过10000里的客户信息转移到一张称为flyersclub的表中,他们的详细情况被记录在表flyers中,正确的是______。
( )A.insert into flyersclub from flyers where idistancetravelled>=10000B.insert flyersclub where idistancetravelled>=10000C.insert into flyersclub from flyers where (idistancetravelled)values>=10000D.insert flyersclub (idstancetravelled) values from flyers where idistancetravelled>=100007、为了使索引键的值在基本表中唯一,在建立索引语句中应使用保留字_________。
一、单选题(共 10 道试卷,共 50 分。
)1. SQL Server中,保存着每个数据库对象的信息的系统表是(C)。
A. sysdatabasesB. SyscolumnsC. SysobjectsD. Syslogs2. 在存在下列关键字的SQL语句中,不可能出现Where子句的是(D)。
A. UpdateB. DeleteC. InsertD. Alter3. 在查询语句的Where子句中,如果出现了“age Between 30 and 40”,这个表达式等同于(A)。
A. age>=30 and age<=40B. age>=30 or age<=40C. age>30 and age<40D. age>30 or age<404. 如果要在一张管理职工工资的表中限制工资的输入范围,应使用(D)约束。
A. PDRIMARY KEYB. FOREIGN KEYC. uniqueD. check5. 记录数据库事务操作信息的文件是(D)。
A. 数据文件B.索引文件C. 辅助数据文件D. 日志文件6. 要查询XSH数据库CP表中产品名含有“冰箱”的产品情况,可用(C)命令。
A. SELECT * FROM CP WHERE 产品名称 LIKE ‘冰箱’B. SELECT * FROM XSH WHERE 产品名称 LIKE ‘冰箱’C. SELECT * FROM CP WHERE 产品名称 LIKE ‘%冰箱%’D. SELECT * FROM CP WHERE 产品名称=‘冰箱’7. 储蓄所有多个储户,储户能够在多个储蓄所存取款,储蓄所与储户之间是(D)。
A. 一对一的联系B.一对多的联系C. 多对一的联系D. 多对多的联系8. SQL的聚集函数COUNT、SUM、AVG、MAX、MIN不允许出现在查询语句的(D)子句之中。
A. SELECTB. HAVINGC. GROUP BY…HAVINGD. WHERE9. 列值为空值(NULL),则说明这一列(C)。
sql期末考试题及答案B卷一、选择题(每题2分,共20分)1. SQL中的SELECT语句用于:A. 插入数据B. 更新数据C. 查询数据D. 删除数据答案:C2. 下列哪个SQL语句用于删除表中的数据?A. DELETEB. DROPC. INSERTD. UPDATE答案:A3. 在SQL中,用来创建新表的关键字是:A. CREATE TABLEB. CREATE DATABASEC. ALTER TABLED. DROP TABLE答案:A4. SQL中的GROUP BY子句用于:A. 排序结果B. 过滤结果C. 聚合数据D. 连接表答案:C5. 下列哪个SQL语句用于更新表中的数据?A. SELECTB. INSERTC. UPDATED. DELETE答案:C6. SQL中的主键约束用于:A. 唯一标识表中的每条记录B. 允许字段为空C. 定义字段的数据类型D. 定义字段的默认值答案:A7. 在SQL中,用来删除表的关键字是:A. DROP TABLEB. DELETE TABLEC. REMOVE TABLED. ERASE TABLE答案:A8. SQL中的外键约束用于:A. 唯一标识表中的每条记录B. 维护表之间的引用完整性C. 定义字段的默认值D. 允许字段为空答案:B9. 在SQL中,用来插入数据的关键字是:A. INSERT INTOB. ADD INTOC. PUT INTOD. CREATE INTO答案:A10. SQL中的ORDER BY子句用于:A. 过滤结果B. 聚合数据C. 排序结果D. 连接表答案:C二、填空题(每空2分,共20分)11. 在SQL中,用来定义字段数据类型的关键字是____。
答案:DATATYPE12. SQL中的内连接(INNER JOIN)用于连接两个表,其中只有两个表中都有匹配的记录才会出现在结果集中。
答案:正确13. 在SQL中,用来定义字段默认值的关键字是____。
sql期末试题及答案在下面的文章中,我将为您呈现一份SQL期末试题及答案,以便您进行学习和复习。
请注意,我会尽力满足您对整洁美观排版和流畅语句的要求,同时保持准确性和阅读体验。
祝您阅读愉快!SQL期末试题及答案一、选择题1. 下列哪个是SQL的关键字?a) SELECTb) OPTIONc) VALUESd) JOIN答案:a) SELECT2. SQL是什么的缩写?a) Simple Query Language(简单查询语言)b) Structured Query Language(结构化查询语言)c) Sequential Query Language(顺序查询语言)d) Systematic Query Language(系统化查询语言)答案:b) Structured Query Language(结构化查询语言)3. 下面哪个SQL函数用于返回指定字符的长度?a) COUNTb) LENGTHc) MAXd) AVG答案:b) LENGTH4. 在SQL中,以下哪个关键字用于过滤查询结果?a) GROUP BYb) ORDER BYc) WHEREd) HAVING答案:c) WHERE5. 下面哪个SQL关键字用于对结果集进行排序?a) LIMITb) SORTc) ORDER BYd) ASC答案:c) ORDER BY二、填空题1. 在数据库中,用于创建新表的关键字是____。
答案:CREATE2. 以下是MySQL数据库管理系统的一些函数:- SUM:用于计算指定列的总和。
- MAX:用于返回指定列的最大值。
- MIN:用于返回指定列的最小值。
请补充缺失的函数名称:____。
答案:AVG(用于返回指定列的平均值)三、简答题1. 什么是SQL注入攻击?如何防止SQL注入攻击?答:SQL注入攻击是指恶意用户通过在用户输入的数据中插入恶意的SQL代码来破坏、篡改或者获取数据库中的数据。
二、程序阅读题(15分)1 1、说明下述各个通配符表达式的含义(10分)(1)Like 'k%' (2) Like '_ing' (3) Like '[kw]%'(4) Like '[a-e]n' (5) Like 'k[^i]%'答:(1)匹配任意长度的字符,甚至包括零;(2)一次只能匹配一个任意字符;(3)匹配指定范围内的任意单个字符;(4)匹配a—e中的任意单个字符;(5)匹配不属于指定范围内的任意单个字符2、说明下述语句作用(5分)C REATE TRIGGER employee_updateON employees for updateASIF update (employeeid)BEGINrollback tranEND答:阻止用户修改Employees表中的EmployeeID列三、T-SQL编程题 (共2题,共65分)1、T-SQL函数编程(10分)声明1个变量存放字符串“Information engineering college”,要对其进行如下操作并使用print输出各个操作的结果:将该字符串全部转换为小写并进行输出;输出整个字符串的长度;提取左边2个字符进行输出;将“college”字串用“institute”。
答; declare @temp varcha(50)set @temp=’Information engineering college’Print Lower(@temp)Print len(@temp)Print left(@temp,2)Print replace(@temp,’college’,’institute’)2、T-SQL综合编程(55分)有下述3张表结构(英文为相应的表名或者字段名,中文为备注):CARD借书卡表:CNO卡号,NAME姓名,CLASS班级BOOKS 图书表:BNO 书号,BNAME 书名,AUTHOR 作者,PRICE 单价,QUANTITY库存册数BORROW 借书记录表:CNO 借书卡号,BNO 书号,RDATE 还书日期备注:限定每人每种书只能借一本;库存册数随借书、还书而改变。
sql期末考试题及答案SQL期末考试题及答案一、选择题(每题2分,共20分)1. 在SQL中,用于查询语句的关键字是:A. SELECTB. INSERTC. UPDATED. DELETE答案:A2. 下列哪个SQL语句用于删除表中的记录?A. DROP TABLEB. DELETE FROMC. REMOVED. ERASE答案:B3. 在SQL中,用于创建新表的关键字是:A. CREATE TABLEB. NEW TABLEC. ADD TABLED. START TABLE答案:A4. SQL中的主键约束保证表中:A. 所有数据都是唯一的B. 每行数据都是唯一的C. 每列数据都是唯一的D. 只有一列数据是唯一的答案:B5. SQL中的外键约束用于:A. 确保数据的唯一性B. 确保数据的完整性C. 允许数据的重复D. 限制数据的访问答案:B6. 在SQL中,以下哪个操作用于更新表中的记录?A. UPDATEB. MODIFYC. CHANGED. ALTER答案:A7. SQL中的GROUP BY子句用于:A. 排序结果B. 分组结果C. 过滤结果D. 限制结果答案:B8. SQL中的HAVING子句与WHERE子句的区别是:A. HAVING用于过滤分组后的数据B. WHERE用于过滤分组前的数据C. HAVING和WHERE功能相同D. HAVING用于排序数据答案:A9. SQL中的INNER JOIN用于:A. 连接两个表中所有匹配的行B. 连接两个表中不匹配的行C. 只显示第一个表的数据D. 只显示第二个表的数据答案:A10. 在SQL中,以下哪个操作用于添加新的记录到表中?A. INSERT INTOB. ADD INTOC. PUT INTOD. ENTER INTO答案:A二、简答题(每题10分,共30分)1. 解释SQL中的事务是什么,并给出事务的四个基本属性(ACID)。
sql期末试题及答案一、选择题(每题2分,共20分)1. SQL是一种()。
A. 编程语言B. 数据库管理系统C. 操作系统D. 网络协议答案:B2. 在SQL中,用于查询语句的关键字是()。
A. INSERTB. UPDATEC. SELECTD. DELETE答案:C3. 如果要查询表中所有记录,可以使用()。
A. *B. SELECTC. WHERED. FROM答案:A4. 在SQL中,用于更新表中数据的关键字是()。
A. INSERTB. UPDATEC. SELECTD. DELETE5. 下列哪个选项不是SQL中的聚合函数?()A. COUNTB. AVGC. MAXD. DISTINCT答案:D6. SQL中的GROUP BY子句用于()。
A. 排序结果B. 过滤结果C. 聚合数据D. 选择数据答案:C7. 在SQL中,用于删除表中数据的关键字是()。
A. INSERTB. UPDATEC. DELETED. DROP答案:C8. 如果要创建一个新的数据库,应该使用哪个SQL语句?()A. CREATE DATABASEB. CREATE TABLEC. INSERT INTOD. SELECT答案:A9. 在SQL中,用于创建新表的关键字是()。
B. INSERTC. SELECTD. DROP答案:A10. SQL中的主键(PRIMARY KEY)用于()。
A. 标识唯一的记录B. 存储数据C. 排序数据D. 过滤数据答案:A二、填空题(每题3分,共15分)1. 在SQL中,使用________语句可以删除一个表。
答案:DROP TABLE2. 要查询表中所有列的数据,可以使用________关键字。
答案:SELECT *3. 在SQL中,使用________子句可以指定查询结果的返回顺序。
答案:ORDER BY4. 要插入新的数据行到表中,可以使用________语句。
答案:INSERT INTO5. 使用________关键字可以创建一个新的数据库。
学校:北京联合大学
系别:信息管理系
姓名:孙超
学号:2013110444006
《餐饮业信息管理系统的开发》
1、本项目的需求分析
随着今年来中国餐饮行业的日益火爆,在强烈的行业竞争中,一个高效的餐饮信息管理系统的应用,无疑是至关重要的。
高效,便捷的管理系统,不仅仅极大的方便了食客的就餐,同时对于餐饮公司的各项信息管理有着很大的帮助,同时,我们的餐饮信息管理系统还能帮助餐厅降低错误率,扩大营业范围,增加知名度等。
为了使得系统在操作的过程中,更加便捷,具有针对性,本次系统设计主要分为:员工登陆操作信息系统,以及店主操作管理信息系统。
不同的设计从而达到不同的功能,实现信息的有效传达与管理。
第一:在员工使用本餐饮信息管理系统应可以实现以下功能:
1.添加修改查询客户会员信息(修改客户信息需客户确认)
2.查询菜单
3.添加查询预定信息,为老顾客打折
4.客户可以在自己的会员账户里充值
5.顾客可以用现金买单也可以从会员账户里扣取
第二:管理员使用本餐饮信息管理系统应可以实现以下功能:
1.添加修改查询客户会员信息(修改客户信息需客户确认)
2.添加修改查询菜单信息,最好能看到菜品图片
3.添加查询预定信息,为老顾客打折
4.客户可以在自己的会员账户里充值
5.顾客可以用现金买单也可以从会员账户里扣取
6.设定具体的打折方法
7.添加职员信息,权限也可以定为管理员。
8.可以查询使用者的现金收款金额。
二、餐饮业管理数据库管理系统的E-R模型(概念结构设计)
1.用户(员工)的信息:
编号、密码、类型、姓名、电话、收款金额
2.客户信息:
用户编号、客户编号、姓名、电话、密码、开卡时间、卡内余额
3.食谱:
类型、名称、价格、配料、照片
4.预定:
用户编号、日期、预定时间、客户姓名、类型、预定食谱、桌号5桌台管理:
桌号、使用情况、
6.点餐管理:
用户编号、类型、菜品、数量、价格、照片
7.盈利管理:
日期、日支出金额、店内收入、外卖收入、盈利额度
各对象之间的联系图:
用户E-R图
主要存储一些用户信息,如用户的账号、密码和类型地点等等,主要用于用户登录,添加客户和添加预定时会使用到用户信息。
客户表E-R图
主要存储一些客户信息,如客户的账号、密码、联系方式和消费情况等等,主要用于客户订餐、充值和结算,使用于添加预定。
桌台表E-R图
主要用于储存餐饮店桌台使用情况,方便来客安排,与预定。
食谱表E-R图
主要存储一些食谱信息,如食谱的名称、价格和照片等等,主要用于客户订餐,使用于添加预定。
点餐表E-R图
主要储存堂食客人点餐信息,用于记录、统计点餐信息,以及分析菜品的受欢迎程度。
预定E-R图
主要存储一些预定信息,如客户的账号、预定的时间、桌号和菜单等等,主要用于记录客户的预定信息,会使用到用户、客户、菜单和折扣信息。
主要存储每日收入流水,用于统计财务收入。
3.数据表的设计
1、user(用户员工表)
用户表主要用于存储一些用户信息,如用户的账号、密码和类型地点等等,主要用于用户登录,添加客户和添加预定时会使用到用户信息来记录经手的用户,字段money用于记录用户的收款金额,便于结算时对收款现金的核对。
2、customer(客户表)
客户表主要用于存储一些客户信息,如客户的账号、密码、联系方式和消费情况等等,主要用于客户订餐、充值和结算,字段money用于储存账户余额,在使用充值和账户余额支付时会使用到它。
字段usedmoney用于记录客户的消费情况,为客户打折时会使用到它。
3、food (食谱表)
食谱表主要用于存储一些食谱信息,如食谱的名称、价格和照片等等,主要用于客户订餐,使用于添加预定。
字段Price记录的是食物的价格。
当客户预定餐点时,系统使用它来算费用。
4、Order(点餐表)
表3.3 Order
5、YuDing(预定表)
预定表主要用于存储一些预定信息,如客户的账号、预定的时间、桌号和菜单等等,主要用于记录客户的预定信息,会使用到用户、客户、菜单和折扣信息。
当系统预定餐点时,会从其他各表中调出需要的信息,经过计算和处理后,将最终信息储存到YuDing表,该表和其它各表都有紧密的联系。
6、Yinli (盈利表)
4.数据库创建:
创建表
食谱表用户表预定表桌台表
盈利表
点餐表
客户表
六查询
1.查询“小餐饮管理”数据库中,“客户表”中的所有数据
2.条件查询:查询“客户表”中“客户姓名=孙超”的信息
3.查询“食谱表”中菜名、价格、食品照片、类型、食谱配料
4.查询“点菜表”中用户编号为01点菜情况。
5.模糊查询:查询“客户表”中,姓“王”且表中情况
6.查询统计“客户表”中客户的总数
8.二表查询:查询“用户表”中编号=‘01’的编号点菜情况
9.三表查询:查询“用户表”,“客户表”,“点菜表”中,用户编号为01的用户类型,
点菜情况,以及预定情况
10嵌套查询:查询点了热菜的用户编号
7.约束
7.1代码约束
/*设置餐饮表中盈利额度店内收入>0并<=1000的约束*/
use小餐饮管理系统
go
ALTER TABLE盈利表
ADD CONSTRAINT qw_constraint CHECK (店内收入>=0 AND店内收入<=10000) select*
from盈利表
/*设置价格>=0 AND 价格<=110的约束*/
use小餐饮管理系统
go
ALTER TABLE食谱表
ADD CONSTRAINT wq_constraint CHECK (价格>=0 AND价格<=110)
select*
from食谱表
/*设置桌台表可座人数>=0 AND可座人数<=10 的约束*/
use小餐饮管理系统
go
ALTER TABLE桌台表
ADD CONSTRAINT rs_constraint CHECK (可座人数>=0 AND可座人数<=10) select*
from桌台表
/*设置使用情况IN('未','是')的约束*/
use小餐饮管理系统
go
ALTER TABLE桌台表
ADD CONSTRAINT ss_constraint CHECK (使用情况IN('未','是'))
select*
from桌台表
/*向表中添加一个字段并设置默认值约束*/
ALTER TABLE用户表
ADD AddDate datetime NULL
CONSTRAINT AddDateDflt
DEFAULT getdate()WITH VALUES
select*
from用户表
/*创建一个新表VIP表,只考虑贵宾编号和性别两列,性别只包括男或女的约束*/ Use 小餐饮管理系统
go
create TABLE VIP表
(
贵宾编号char(6)not null,
性别char(1)not null check(性别in('男','女'))
)
代码抓图:
9.存储过程。