(一)现有关系数据库如下: 数据库名:我班同学数据库
同学表(学号 char(6),姓名,性别,年龄,民族,身份证号,宿舍号) 宿舍表(宿舍号 char(6),宿舍电话) 用SQL语言实现下列功能的sql语句代码: 1.创建数据库[我班同学数据库]代码 。 2.创建数据表[宿舍表]代码;
宿舍表(宿舍号 char(6),宿舍电话)
要求使用:主键(宿舍号)、宿舍电话:以633开头的7位电话号码 3.创建数据表[同学表]代码 ;
同学表(学号 char(6),姓名,性别,年龄,民族,身份证号,宿舍号) 要求使用:主键(学号)、外键(宿舍号)、默认(民族)、非空(民族,姓名,年龄)、唯一(身份证号)、检查(性别) 4.将下列宿舍信息添加到宿舍表的代码 宿舍号 宿舍电话 101 6331157 102 6331777
修改 宿舍号为101的 宿舍电话:6331158 删除 宿舍号为102的 宿舍信息 5.创建视图[同学表视图]代码 ;
同学表视图(学号, 姓名, 性别, 年龄, 民族, 身份证号, 宿舍号, 宿舍电话)
6.从同学表视图中查询姓张的女同学的姓名、性别、宿舍电话。 7.从同学表中查询女同学的最大年龄、最小年龄、平均年龄。 8.创建带参数的存储过程[某宿舍同学]:姓名, 性别, 宿舍电话 执行此过程,查询'101'宿舍情况
9.设置一SQL身份验证的用户账户:登录名:U班主任,密码:888,数据库用户名:U读者,权限:可查询查询本数据库中所有表、视图、内嵌表值函数的数据,执行所有的存储过程。请写出账户、权限设置的T_SQL脚本。
(二) 现有关系数据库如下:
数据库名:学生成绩数据库
学生表(学号 char(6),姓名,性别,民族,身份证号) 课程表(课号 char(6),名称) 成绩表(ID,学号,课号,分数) 用SQL语言实现下列功能的sql语句代码: 1. 创建数据库[学生成绩数据库]代码 ; 2. 创建[课程表]代码 ;
课程表(课号 char(6),名称) 要求使用:主键(课号)、非空(名称) 3. 创建[学生表]代码 ;
学生表(学号 char(6),姓名,性别,民族,身份证号)
要求使用:主键(学号)、默认(民族)、非空(民族,姓名)、唯一(身份证号)、
检查(性别)
4. 创建[成绩表]代码 ;
成绩表(ID,学号,课号,分数)
要求使用:主键(课号)、外键(成绩表.学号,成绩表.课号)、检查(分数),
自动编号(ID)
5. 将下列课程信息添加到课程表的代码 课号 课程名称 100001 大学语文 100002 大学英语 100003 西班牙语
修改 课号为100002的课程名称:实用英语
删除 课号为100003的课程信息
6. 写出创建:成绩表视图(学号,姓名,课号,课程名称,分数)的代码; 7. 写出创建:某门课程成绩 内嵌表值函数以及检索的代码;
检索:所有修 实用英语 这门学生的成绩;
8. 写出创建:某门课程高低均分 计算某门课程成绩最高分、最低分、平均
分 存储过程以及执行的代码;
执行:所有修 实用英语 这门学生的最高分、最低分、平均分;
9. 检索姓李的女同学的情况:姓名、性别、民族。
10.检索有一门或一门以上课程成绩大于等于90分的所有学生的信息,包括学
号、姓名。
11.设置一SQL身份验证的账户:登录名:U领导,密码:888,数据库用户名:U读者,权限:可查询查询本数据库中所有表、视图、内嵌表值函数的数据。请写出账户、权限设置的T_SQL脚本。
(三)有一个[学生课程]数据库,数据库中包括三个表:
学生表Student由学号(Sno)、姓名(Sname)、性别(Ssex)、年龄(Sage)、所在系(Sdept)五个属性组成,记为:
Student(Sno,Sname,Ssex,Sage,Sdept) ,Sno 为关键字。
课程表Course由课程号(Cno)、课程名(Cname)、先修课号(Cpno)、学分(Ccredit)四个属性组成,记为:Course(Cno,Cname,Cpno,Ccredit) Cno为关键字。
成绩表SG由学号(Sno)、课程号(Cno)、成绩(Grade)三个属性组成,记为:SG(Sno Cno, Grade) (SNO, CNO)为关键字。 用SQL语言实现下列功能:
1.建立学生表Student,其中学号属性不能为空,并且其值是唯一的。 2.向Student表增加“入学时间(Scome)”列,其数据类型为日期型。 3.查询选修了3号课程的学生的学号及其成绩,查询结果按分数的降序排列。 4.查询学习1号课程的学生最高分数、平均成绩。 5.查询与“李洋”在同一个系学习的学生。
6.将计算机系全体学生的成绩置零。 7.删除学号为05019的学生记录。 8.删除计算机系所有学生的成绩记录。 (四)现有关系数据库如下:
数据库名:教师数据库
教师表(编号 char(6),姓名,性别,民族,职称,身份证号) 课程表(课号 char(6),名称) 任课表(ID,教师编号,课号,课时数) 用SQL语言实现下列功能的sql语句代码: 1. 创建上述三表的建库、建表代码 ;
要求使用:主键(教师表.编号,课程表.课号)、外键(任课表.教师编号,
任课表.课号)、默认(民族)、非空(民族,姓名)、唯一(身份证号)、检查(性别、课时数),自动编号(ID)
2. 将下列课程信息添加到课程表的代码 课号 课程名称
100001 SQL Server数据库 100002 数据结构 100003 VB程序设计
修改 课号为100003的课程名称:Visual Basic程序设计 删除 课号为100003的课程信息
3. 写出创建[任课表视图](教师编号,姓名,课号,课程名称,课时数)的代
码;
4. 写出创建[某门课任课教师]内嵌表值函数以及检索的代码;
检索:所有代'SQL Server数据库'这门课程的老师姓名;
5. 写出创建[统计课时数]:输出最大课时数、最低课时数、平均课时的存储
过程以及执行代码;
6. 写出创建:计算某教师代课总课时,并将值返回的存储过程以及执行代码。
执行:计算“郭老师”的总课时。
7. 检索有一门或一门以上课程课时数大于90的所有教师的信息,包括编号、
姓名。 8.
建一个规则,并将其绑定到教师表的职称列上,规定取值为('教授','副
教授','讲师', '助教')之一。 (五)现有关系数据库如下:
数据库名:医院数据库
医生表(编号,姓名,性别,出生日期,职称) 病人表(编号,姓名,性别,民族,身份证号) 病历表(ID,病人编号,医生编号,病历描述) 用SQL语言实现下列功能的sql语句代码: 1. 创建上述三表的建库、建表代码;
要求使用:主键(师医生表.编号,病人表.课号)、外键(病历表.医生编号,
病历表.病人课号)、非空(职称,姓名)、检查(性别),自动编号(ID) 2. 将下列医生信息添加到医生表的代码
编号 姓名 性别 出生日期 职称 100001 杜医生 男 1963-5-18 副主任医师 100002 郭医生 女 1950-7-26 副主任医师 100003 刘医生 男 1973-9-18 医师
修改 编号为100002的医生职称为‘主任医师’ 删除 编号为100003的医生信息
3. 写出创建:医疗表视图(医生编号,姓名,病人姓名,病历)的代码; 4. 写出所有病人编号、姓名、病历、以及病人所对应的医生编号的查询语句; 7. 写出创建: 输出某医生(根据医生编号即可)看病人数存储过程以及执
行过程(要求输入医生姓名的参数,输出病人数)。 8. 写出查询1970年以前出生的医生。 7. 检索有病人的医生信息。
8. 创建一个默认,并将其绑定到医生表的成绩职称列上,默认值为“医师”。
(六)已知有如下4个表:
供应商表S(SNO,SNAME,CITY) 零件表J(JNO,JNAME,COLOR,WEIGHT) 工程表P(PNO,PNAME,CITY) 供应情况表SPJ(SNO,PNO,JNO,QTY)
其中,SNO、SNAME、CITY分别表示供应商代码、供应商姓名、供应商所在城市,JNO、JNAME、COLOR、WEIGHT分别表示零件代码、零件名、颜色和重量,PNO、PNAME、CITY分别表示工程代码、工程名、工程所在城市,QTY表示某供应商供应某工程某种零件的数量。 1.分别写出SQL语句,完成如下功能:
(1)查询出重量大于30或颜色为\"red\"的零件名; (2)查询出每个供应商为每个工程供应零件的数量 (3)查询出给\"北京\"的工程供应\"齿轮\"零件的供应商名; (4)建一个视图,定义为所有\"green\"颜色的零件。 2. 图书出版管理数据库中有两个基本表:
图书 (书号,书名,作者编号,出版社,出版日期) 作者 (作者编号,作者名,年龄,地址)
试用SQL语句写出下列查询:检索年龄低于作者平均年龄的所有作者的作者名、书名和出版社。 3. 现有关系数据库如下:
学生(学号,姓名,性别,专业、奖学金) 课程(课程号,名称,学分) 学习(学号,课程号,分数) 用SQL实现:
(1)查询没有获得奖学金、同时至少有一门课程成绩在95分以上的学生信息,包括学号、姓名和专业;
(2)查询没有任何一门课程成绩在80分以下的所有学生的信息,包括学号、姓名和专业;
(3)对成绩得过满分(100分)的学生,如果没有获得奖学金的,将其奖学金设为 1000元;
(4)定义学生成绩得过满分(100分)的课程视图AAA,包括课程号、名称和学分;
(七)设有学生选修课程数据库,
学生表(学号,姓名,年龄,性别,所在系,地址,出生日期) 选课表(学号,课程号,成绩)
课程表(课程号,课程名称,教师姓名) 用SQL语言查询下列问题:
1.李老师所教的课程号、课程名称。 2.年龄大于23岁的女学生的学号和姓名。 3.“李小波”所选修的全部课程名称。
4.所有成绩都在80分以上的学生姓名及所在系。 5.没有选修“操作系统”课的学生姓名。 6.英语成绩比数学成绩好的学生。
7.至少选修两门以上课程的学生姓名、性别。 8.选修了李老师所讲课程的学生人数。 9.没有选修李老师所讲课程的学生。
10.“操作系统”课程得最高分的学生姓名、性别、所在系。 (八) 在[Xk]数据库中有
课程表[Course]由课程编码(CouNo)、课程名称(CouName)、教师名(Teacher)
等组成,
学生表[Student]由学号(StuNo)、学生姓名(StuName)、班级编号(ClassNo)
等组成,
学生选课表[StuCou] 由学号(StuNo)、课程编码(CouNo)等组成。
1. 检索Xk数据库中的课程表(Course)中的教师名(Teacher)、课程编码
(CouNo)、课程名称(CouName),要求检索结果首先按照教师名降序排列,教师名相同时,则按照课程号升序排列。
2. 使用IN关键字检索Xk数据库中的课程表(Course),要求检索课程编码
(CouNo)不为'004'、'007'、'013'
3. 从Xk数据库中的Student表中检索第二个字为'宝'的学生名字。 4. 使用Transact-SQL语句在XK数据库中创建一个名为[p_StudentPara]的存
储过程。该存储过程能根据给定的班级返回该班级代码对应的Student表
中的记录。并赋值查询班级代码为'20000001'和'20000002'的学生记录。 5. 创建一个触发器,要求当插入、更新、删除StuCou表的选课记录时,能更
新Course表中相应的报名人数。
6. 在SQL查询分析器的查询窗口中创建一个尺寸为5MB的逻辑名字为newxk
的数据库, 3MB的数据文件NEW_DATA.MDF存储在C:\\下,文件的最大尺寸为10MB,文件增量为1MB。2MB的事务日志文件NEW_LOG.LDF存储在C:\\下,文件的最大尺寸为15MB,文件的增量为1MB。 (九)现有关系数据库如下:
数据库名:学生成绩数据库
学生表(班级编号,学号,姓名,性别,民族,身份证号,出生日期) 课程表(课程号,课程名,开课学期,学时) 成绩表(ID,学号,课程号,分数)
用SQL语言实现下列功能的sql语句代码:
1.查询学生信息表中的年龄(重复年龄只显示一次)
2.从学生信息表和教学成绩表中查询查询学生的学号、姓名、课程名和分数
3.从课程表中统计第二学期的总学时。 执行结果为:
课程好 课程名 开课学期 学时 … … … … … … … … sum
============ …
4.编写一个存储过程,输入学号,从“教学成绩表视图” 显示该学生的
姓名、课程名、分数。
5.创建一个触发器,当修改学生表中的姓名时,显示“学生姓名已被修改”。 (十)现有关系数据库如下:
数据库名:学生成绩数据库
学生表(班级编号,学号,姓名,性别,民族,身份证号,出生日期) 课程表(课程号,课程名) 成绩表(ID,学号,课号,分数)
用SQL语言实现下列功能的sql语句代码:
1.在[学生成绩数据库]的[学生表]中查询年龄为20岁或22岁的学生。 2.在[学生成绩数据库]中查询每个学生的班级编号、学号、姓名、平均分,结果按平均分降序排列,均分相同者按班级排列。
3.编写一个自定义函数,根据[学生表]中的[出生日期]列,计算年龄。 4.创建一个视图[教学成绩表视图]显示学生的学号、姓名、课程名、分数。 5.编写一个存储过程,输入学号,从[教学成绩表视图]显示该学生的姓名、课程名、分数。
6.把[学生表]、[成绩表]通过[学号]建立约束关系。 7.把[学生表]、[成绩表]通过[学号]建立约束关系。 8.在学生表中插入记录:
班级编号 学号 姓名 性别 民族 身份证号 出生日期
050201 050201001 王莉欣 女 1979-06-25
050202 050202001 张晶 男 NULL
把张晶的民族改为“汉”、出生日期改为“1980-12-24”
NULL 01020319801224121 汉 53010219790625224
因篇幅问题不能全部显示,请点此查看更多更全内容