sqlserver上机试题_第1页
sqlserver上机试题_第2页
sqlserver上机试题_第3页
sqlserver上机试题_第4页
sqlserver上机试题_第5页
已阅读5页,还剩4页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、SQLSERVER2000上机试题上机题1:一:创建一个数据库,并创建两个数据库表。(50分)1、创建一个名为scxh_db的数据库。(10分)2、在scxh_db数据库中创建scxh_reg(id,username,password,tel)和scxh_news(newsid,title,content,add_date,hits)两个数据库表,数据类型自定。(30分)3、导出scxh_db数据库,生成sqlscript脚本并存放到考生文件夹中(通过查询分析器设计的直接保存代码到考生文件夹中)。(10分)二:存储过程设计。(50分)1:在scxh_db中编写一个名为scxh_pro的存储过程

2、,要求实现查询scxh_db中scxh_reg表的所有记录。(30分)2:在scxh_db中编写一个名为class_pro的类属存储过程(即系统存储过程),内容自定。(10分)3:备份scxh_db数据库,并把备份文件拷贝到考生文件夹。(10分)。上机题2:一:创建一个数据库,并创建三个数据库表。1、以自己的姓名(拼音)创建一个数据库。(10分)2、在数据库中创建如下三个表,并输入内容student表(学生表)(10分)学号姓名性别年龄系别1吴好男18计算机系2崔平女21经管系3钱筱女19电子系course表(课程表) (10分)课程号课程名学分1SQL Server42数据结构33专业英语2

3、sc表(选课表)(10分)学号课程号成绩1188219022703379二、写出SQL语句1、把course表中课程号为3的课程的学分修改为3。(10分)2、在student表中查询年龄大于18的学生的所有信息,并按学号降序排列。(10分)3、在以上三个表中查询选的课程的“学分”为3,并且成绩大于80的学生的学号、姓名和性别。(10分)4、为student表创建一个名称为my_trig的触发器,当用户成功删除该表中的一条或多条记录时,触发器自动删除SC表中与之有关的记录。(注:在创建触发器之前要判断是否有同名的触发器存在,若存在则删除之。)(30分)IF EXISTS (SELECT name

4、 FROM sysobjects WHERE name = 'my_trig' AND type = 'TR') DROP TRIGGER my_trigcreate trigger my_trigon studentfor delete as delete sc from sc,deletedwhere sc.id=deleted.id上机题3:一:创建一个数据库,并创建三个数据库表。1、以自己的姓名(拼音)创建一个数据库。(10分)2、在数据库中创建如下三个表(要求设置表之间的关系)(40分)学生基本信息表(学号、姓名、性别、专业、出生年月等)选课表(学号、

5、课程号、分数)课程表(课程号、课程名、所属专业、学分)二、写出 SQL 语句。1、查询所有选 SQL 课程的学生学号,姓名和专业。 (10分)2、删除所有选择数学的同学的选课记录。 (10分)3、查询有哪些课程没有被任何同学报选。 (10分)4、创建存储过程,能够查询出选修任何课程的学生信息及相应的分数。(10分)5、创建存储过程,以表格的形式返回本课程的平均分数。(10分)上机题4:一:创建一个数据库,并创建两个数据库表。1、以自己的姓名(拼音)创建一个数据库。(10分)2、在数据库中创建如下两个表(要求设置表之间的关系)(40分)员工表:EMP(ENO,ENAME,SALARY,DNO),

6、其中各属性的含义依次为职工号、姓名、工资和所在部门号部门表:DEPT(DNO,DNAME,MANAGER),其中各属性含义依次为部门号、部门名称、部门经理的职工号。二:写出SQL语句:1、列出各部门中工资不低于600元的职工的平均工资。(10分)2、查询001号职工所在部门名称。(10分)3、将“销售部”的那些工资数额低于600的职工的工资上调10%。(10分)4、在EMP表中增加“EID(员工身份证)”字段,数据类型varchar(18),不可空,并将其设定为UNIQUE约束。(10分)5、创建一存储过程,通过输入参数员工姓名(如“张三"),筛选出该员工的基本信息,对不存在此员工姓

7、名的输入值,必须作一检测,打印信息“不存在此员工”。(10分)上机题5:一:创建一个数据库,并创建四个数据库表。1、以自己的姓名(拼音)创建一个数据库。(10分)2、在数据库中创建如下四个表(要求设置表之间的关系)(40分)职工情况表:zgqk(zgbh,zgxm,bmbh),其中,zgbh:职工编号;zgxm:职工姓名;bmbh:部门编号。科研情况表:kyqk(zgbh,kymc,kylb),其中,zgbh:职工编号;kymc:科研名称;kylb:科研类别。部门表:bm(bmbh,bmmc),其中,bmbh:部门编号;bmmc:部门名称。工资表:gz(zgbh,jcgz,zwgz,zjgz,

8、fz,sdf),其中,zgbh:职工编号;jcgz:基础工资;zwgz:职务工资;zjgz:职绩工资,fz:房租;sdf:水电费。二、用SQL实现如下操作:(各10分,共50分)1、在工资表中插入两个字段:kk:numeric(7,2)和sfgz:numeric(7,2),其中,kk:扣款;sfgz:实发工资。并为kk和sfgz这两个字段赋值,kksdf+fz,sfgzjcgzzwgzzjgzkk。2、在职工情况表中删除部门名称为“计算机系”的所有职工。3、统计每个部门的职工人数。4、查询跟张三在同一部门的职工编号、职工姓名(用exists实现)。5、查询科研成果在3项以及3项以上的职工的编号

9、、姓名。上机题6:一:创建一个数据库,并创建三个数据库表。1、以自己的姓名(拼音)创建一个数据库。(10分)2、在数据库中创建如下三个表(要求设置表之间的关系)(40分)图书:B(图书号B#,书名BN,作者WN,单价BP,库存量BC);读者:R(读者号R#,姓名RN,工作单位RW,地址RA);借阅:BO(图书号B#,读者号R#,借期DB,还期DR,备注MO),其中还期为NULL表示该书未还。二、用SQL实现如下操作:(各10分,共50分)1、检索读者号为“R016”的读者姓名和工作单位;2、检索借阅图书号为“B5”的读者姓名;3、检索读者“李林”所借图书中未还的书名;4、将读者“李林”所借图书

10、的信息从借阅表中删除;5、建立未还图书的读者姓名和单位的视图(要求判断数据库中是否存在此视图)。上机题7:一:创建一个数据库,并创建四个数据库表。1、以自己的姓名(拼音)创建一个数据库。(10分)2、在数据库中创建如下四个表(要求设置表之间的关系)(40分)职工情况表:zgqk(zgbh,zgxm,bmbh)其中,zgbh:职工编号;zgxm:职工姓名;bmbh:部门编号,主码为:zgbh。 科研情况表:kyqk(kybh,zgbh,kymc,kylb)其中,kybh:科研编号;zgbh:职工编号;kymc:科研名称;kylb:科研类别,主码为:kybh。部门表:bm(bmbh,bmmc)其中

11、,bmbh:部门编号;bmmc:部门名称,主码为:部门编号。工资表:gz(zgbh,jcgz,zwgz,zjgz,fz,sdf,yfgz)其中,zgbh:职工编号;jcgz:基础工资;zwgz:职务工资;zjgz:职绩工资,fz:房租;sdf:水电费,yfgz:应发工资,主码为:zgbh。二、用SQL实现如下操作:(各10分,共50分)1、查询计算机系的所有职工的职工编号、姓名、部门编号。2、统计男女职工的人数。3、工资表中的yfgz字段为空,现求出yfgz列的值,其中yfgzsfgzjcgzzwgzzjgzfzsdf。4、在上一题的基础上,查询每个职工的工资情况:职工编号、应发工资,并以应发

12、工资的降序排列。5、查询部门人数在50人以上的部门编号。上机题8:一:创建一个数据库,并创建三个数据库表。1、以自己的姓名(拼音)创建一个数据库。(10分)2、在数据库中创建如下三个表(要求设置表之间的关系)(40分)学生studentSnoChar(5)Not null学号SnameChar(10)Not null姓名SsexChar(2)Not null性别SageTinyintNull年龄Sdeptvarchar(30)Null所在系课程courseCnoChar(1)Not null课程号CnameChar(20)Not null课程名称CpnoChar(1)Null先行课Ccredi

13、ttinyintNot null学分学生选课scsnoChar(5)Not null学号cnoChar(1)Not null课程号GradeDecimal(4,1)Null成绩二、写出SQL语句(每题5分,各50分)1、建立由学生姓名、课程名称、学生成绩三个字段组成的视图2、将修改学生表的权限赋予用户U13、求已取得了50学分以上的学生姓名4、查询没有选择任何课程的学生姓名5、删除“CS”系的所有学生及其选课记录6、给出每门课程的先行课的课程名称7、插入学生记录:("001","李勇","男",21,"计算机系")

14、8、将课程"C5"的学分改为39、求有三门以上课程成绩在90分以上的学生10、查询名字中第2个字为"成"的学生信息上机题9:一:创建一个数据库,并创建三个数据库表。1、以自己的姓名(拼音)创建一个数据库。(10分)2、在数据库中创建如下三个表(要求设置表之间的关系)(40分)职工关系:EMP(E#, ENAME, AGE, SEX, ECITY),其属性分别表示职工工号、姓名、年龄、性别和居住城市。工作关系:WORKS(E#, C#, SALARY),其属性分别表示职工工号、工作的公司编号和工资。公司关系:COMP(C#, CNAME, CITY, MG

15、R_E#),其属性分别表示公司编号、公司名称、公司所在城市和公司经理的工号。二、写出SQL语句:(各10分,共50分)1、检索年龄超过50岁的女职工的工号和姓名;2、检索居住城市和公司所在城市相同的职工工号和姓名;3、检索不在“联华公司”工作的职工工号和姓名。4、建立一个有关女职工的视图EMP_FEMALE,属性包括(E#, ENAME, C#, CNAME, SALARY);5、为“联华公司”的职工加薪5%。上机题10:一:创建职工-社团数据库,并创建三个数据库表。1、创建职工-社团数据库。(10分)2、在数据库中创建如下三个表(要求设置表之间的关系)(40分)职工(职工号,姓名,年龄,性别

16、);社会团体(编号,名称,负责人,活动地点);参加(职工号,编号,参加日期);其中:1)职工表的主码为职工号。2)社会团体表的主码为编号;外码为负责人,被参照表为职工表,对应属性为职工号。3)参加表的职工号和编号为主码;职工号为外码,其被参照表为职工表,对应属性为职工号;编号为外码,其被参照表为社会团体表,对应属性为编号。二、写出SQL语句:1、建立视图:社团负责人(编号,名称,负责人职工号,负责人姓名,负责人性别);2、建立视图:参加人情况(职工号,姓名,社团编号,社团名称,参加日期)3、查找参加唱歌队或篮球队的职工号和姓名。4、求参加人数最多的社会团体的名称和参加人数。5、把对社会团体和参

17、加两个表的数据查看、插入和删除数据的权力赋给用户李平,并允许他将此权力授予其他用户。上机题11:一:创建工程零件数据库,并创建四个数据库表。1、创建工程零件数据库。(10分)2、在数据库中创建如下四个表(要求设置表之间的关系)(40分)供应商(供应商代码,姓名,所在城市,联系电话);工程(工程代码,工程名,负责人,预算);零件(零件代码,零件名,规格,产地,颜色);供应零件(供应商代码,工程代码,零件代码,数量)二、用SQL语句完成下列操作:(各5分,共10分)1、找出天津市供应商的姓名和电话。2、查找预算在50000100000元之间的工程的信息,并将结果按预算降序排列。3、找出使用供应商S

18、1所供零件的工程号码。4、找出工程项目J2使用的各种零件名称及其数量。5、找出上海厂商供应的所有零件号码。6、找出使用上海产的零件的工程名称。7、找出没有使用天津产的零件的工程号码。8、把全部红色零件的颜色改成蓝色。9、将由供应商S5供给工程代码为J4的零件P6改为由S3供应,并作其他必要的修改。10、从供应商关系中删除S2的记录,并从供应零件关系中删除相应的记录。上机题12:一、建立学生选课数据库,库中包括学生、课程和选课3个表,其表结构为:学生(学号,姓名,性别,年龄,所在系);课程(课程号,课程名,先行课);选课(学号,课程号,成绩)。用TransactSQL完成下列操作。1、建立学生选

19、课数据库。(10分)2、建立学生、课程和选课表。(10分)3、建立各表以主码为索引项的索引。(10分)4、建立学生性别只能以“男”或“女”的规则,性别为“男”的缺省,并将它们绑定的学生表上。(10分)5、建立在对选课表输入或更改数据时,必须服从参照完整性约束的INSERT和UPDATE触发器。(10分)6、建立在删除学生记录时,同时也要把相应的选课记录删除的触发器。(10分)7、查询各系及学生数,最后求出共有多少系和多少学生。(10分)8、将学生表和选课表进行内连接、左连接和右外连接。(10分)9、列出学生学号、姓名及学习情况。学习情况用好、较好、一般或较差表示。当平均成绩大于85分时,学习情

20、况为“好”:当平均成绩在70-85分之间,学习情况为“较好”:当平均成绩在60-70分之间,学习情况为“一般”:当平均成绩在60分以下,学习情况为“较差”. (10分)10、创建一存储过程,通过输入参数课程名称(如“SQL"),筛选出该课程的平均成绩、最高分、最低分,对不存在课程的输入值,必须作一检测,打印信息“不存在此课程”。(10分)上机题13:一、建立数据库及表如下:(各10分,共40分)数据库:LabBook表:bookInfoid(int,标识,PK)bookTitle(varChar)bookAuthor(varChar)bookDemo(text)表:bookInfoB

21、id(int,标识,PK)bookCostPrice(float)bookSellPrice(float)bookInDate(date)表:borrowInfoid(int,标识,PK)bookId(int)outDate(date)inDate(date)二、建立具有不同权限的多种用户角色1、图书管理员角色bookAdmin:对3个表具有完全控制权限(20分)2、借书服务员角色bookOP:(20分)bookInfo表全部列只有查询权限bookInfoB表除bookCostPrice列以外全部列只有查询权限,bookCostPrice列无任何权限borrowInfo表所有列具有除删除以外的所有权限3、读者角色bookReader:(20分)bookInfo表全部列只有查询权限bookInfoB表除bookCostPrice列以外全部列只有查询权限,bookCostPrice列无任何权限borrowInfo表所有列只具有查询权限上机题14:一:创建图书管理数据库,并创建三个数据库表。1、创建数据库。(10分)2、在数据库

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论