数据库上机实验题(七、八、九)
- 格式:docx
- 大小:20.96 KB
- 文档页数:6
数据库上机练习题数据库上机练习题在学习数据库课程时,上机练习题是非常重要的一部分。
通过上机练习,我们可以巩固理论知识,提高实践能力,并且更好地理解数据库的概念和应用。
本文将介绍一些常见的数据库上机练习题,帮助读者更好地应对这些挑战。
一、基本查询数据库的基本查询是我们在实际应用中最常用的功能之一。
在上机练习中,我们通常需要编写SQL语句来实现一些简单的查询操作。
比如,查询某个表中的所有记录、按条件筛选记录、排序等等。
举个例子,假设我们有一个学生表,包含学生的学号、姓名、性别和年龄等字段。
我们可以通过以下SQL语句查询所有学生的信息:SELECT * FROM students;如果我们只想查询女生的信息,可以使用以下语句:SELECT * FROM students WHERE gender = '女';二、表的连接在实际应用中,我们经常需要从多个表中获取数据,并进行关联和处理。
上机练习中,表的连接是一个常见的考点。
通过表的连接,我们可以根据某个字段将两个或多个表关联起来,从而获取更丰富的信息。
举个例子,假设我们有一个学生表和一个课程表,学生表中包含学生的学号和姓名,课程表中包含课程的编号和名称。
我们可以使用以下SQL语句查询每个学生所选的课程:SELECT , FROM studentsINNER JOIN coursesON students.student_id = courses.student_id;三、子查询子查询是数据库中非常有用的一种技术,它可以将一个查询的结果作为另一个查询的输入。
在上机练习中,我们经常需要使用子查询来解决一些复杂的问题。
举个例子,假设我们有一个订单表和一个产品表,订单表中包含订单的编号和产品的编号,产品表中包含产品的编号和价格。
我们可以使用以下SQL语句查询每个订单的总金额:SELECT order_id,(SELECT SUM(price) FROM products WHERE products.product_id =orders.product_id) AS total_priceFROM orders;四、数据更新除了查询,数据库还提供了数据更新的功能。
山东大学《数据库系统》上机实验答案详细整理 2021最新版数据库实验(一)熟悉环境、建立/删除表、插入数据Drop table 表名update dbtest set test=1 select * from dbscore1.教师信息(教师编号、姓名、性别、年龄、院系名称)test1_teacher:tid char 6 not null、name varchar 10 not null、sex char 2、age int、dname varchar 10。
根据教师名称建立一个索引。
教师编号 100101 100102 100103 教师姓名张老师李老师马老师性别男女男年龄 44 45 46 院系名称计算机学院软件学院计算机学院1、create table test1_teacher(tid char(6) primary key, name varchar(10) not null,sex char(2), age int,dname varchar(10) )2.学生信息(学生编号、姓名、性别、年龄、出生日期、院系名称、班级)test1_student:sid char 12 not null、name varchar 10 not null、sex char 2、age int、birthday date(oracle的date类型是包含时间信息的,时间信息全部为零)、dname varchar 10、class varchar(10)。
根据姓名建立一个索引。
学号 202100020211 202100020212 202100020213 姓名王欣李华赵岩性别女女男年龄192018出生日期院系名称班级 2021 2021 2021 1994-2-2 计算机学院 1995-3-3 1996-4-4 软件学院软件学院 2、create table test1_student(sid char(12) primary key, name varchar(10) not null, sex char(2), age int,birthday date,dname varchar(10), class varchar(10) )3.课程信息(课程编号、课程名称、先行课编号、学分)test1_course:cid char 6 not null、name varchar 10 not null、fcid char 6、credit numeric 2,1(其中2代表总长度,1代表小数点后面长度)。
数据库上机实验内容及要求(第二部分)1.建立工厂管理数据库工厂(包括厂名和厂长名)需要建立一个管理数据库存储以下信息:(1)一个厂内有多个车间,每个车间有车间号、车间主任姓名、地址和联系电话;(2)一个车间有多个工人,每个工人有职工号、姓名、年龄、性别和工种;(3)一个车间生产多种产品,产品有产品号和价格;每种产品只能由一个车间生产;(4)一个车间制造多种零件,一种零件也可能为多个车间制造。
零件有零件号、重量和价格;(5)一种产品可由多种零件组成,一种零件也可以装配出多种产品;(6)产品和零件均存入仓库;(7)厂内有多个仓库,仓库有仓库号、仓库主任姓名和电话。
根据以上需求分析结果,按照下述要求,设计并建立工厂管理数据库。
◆分析实体及联系,设计E-R图。
◆将E-R图转换成关系模式,并规范化到3NF。
◆在Microsoft SQL Server2000中基于“企业管理器”建立数据库及相关对象(主码,外码,索引,约束等)。
◆测试数据入库2.基于“查询分析器”,完成并保存下述题目的SQL脚本(1)建立“工种”是“钳工”的所有职工详细信息的视图;create view View_工人_钳工asselect*from职工表where工种='钳工'with check option(2)建立“车间号”是“CJ01”的钳工详细信息的视图;create view View_钳工_CJ01asselect*from View_工人_钳工where车间号='CJ01'(3)建立使用了“零件号”是“LJ0002”的所有产品详细信息的视图;create view View_产品_零件LJ0002asselect产品表.产品号,价格,车间号,仓库号from装配表,产品表where装配表.产品号=产品表.产品号and零件号='LJ0002'(4)对零件表按照“零件号”建立唯一索引;create unique index Index_U_零件号on零件表(零件号)(5)对职工表按照“性别”建立聚簇索引;create clustered index Index_C_性别on职工表(性别)(6)查询使用了“零件号”是“LJ0002”的产品的生产车间号;select车间号from装配表,产品表where装配表.产品号=产品表.产品号and零件号='LJ0002'(7)查询“职工号”是“ZG0001”的职工所在车间的“车间主任姓名”和“联系电话”;select车间主任姓名,联系电话from职工表,车间表where职工表.车间号=车间表.车间号and职工号='ZG0001'(8)查询使用了“零件号”是“LJ0002”的所有产品的生产车间的“车间主任姓名”和“联系电话”;(连接查询、嵌套查询实现)select车间主任姓名,联系电话from产品表,装配表,车间表where产品表.产品号=装配表.产品号and产品表.车间号=车间表.车间号and装配表.零件号='LJ0002'select车间主任姓名,联系电话from车间表where车间号in(select车间号from产品表where产品号in(select产品号from装配表where零件号='LJ0002'))(9)查询使用了“零件号”是“LJ0002”的所有产品的“产品号”和“零件数量”,且查询结果按照“零件数量”降序排列;select产品号,零件数量from装配表where零件号='LJ0002'order by零件数量desc(10)查询使用了“零件号”是“LJ0002”的产品数;select count(*)as产品数from装配表where装配表.零件号='LJ0002'(11)查询“LJ0002”号零件装配产品的使用总量;select sum(零件数量)as使用总数from装配表where零件号='LJ0002'(12)查询使用了3种以上零件的产品号;select产品号from装配表group by产品号having count(*)>=3【注意】:下机时保存数据库文件(.mdf和.ldf)及SQL脚本文件到U盘。
试用SQL的查询语句表达下列查询:1.检索王丽同学所学课程的课程号和课程名。
select Cno ,Cname from c where Cno in(select cno from sc where sno in (select sno from s where sname='王丽' ))2.检索年龄大于23岁的男学生的学号和姓名。
select sno,sname from swhere sex='男' and age>233.检索‘c01’课程中一门课程的女学生姓名select sname from swhere sex='女' and sno in(select sno from sc where cno='c01')4.检索s01同学不学的课程的课程号。
select cno from cwhere cno not in (select cno from sc where sno ='s01')5.检索至少选修两门课程的学生学号。
select sc.sno from s,scwhere s.sno=sc.snogroup by sc.snohaving count(o)>=26.每个学生选修的课程门数。
解法一:select so.sno sno,ount,s.snamefrom(select sc.sno sno,count(sc.sno) ccountfrom sc,swhere s.sno=sc.snogroup by sc.sno ) so,swhere s.sno=so.sno解法二:select sc.sno sno,s.sname,count(sc.sno) ccountfrom sc,swhere s.sno=sc.snogroup by sc.sno,sname7.求选修C4课程的学生的平均分。
上机时间7-18周周四上午3、4节实验第一部分数据库操作一:熟悉ACCESS环境(不用提交)下面的实验要在七周内完成实验1 建立学生、课程及成绩表,录入部分数据,并设计验证实体、参照及用户自定义完整性。
实验第二部分SQL语句VB数据库访问技术二:SQL语句及VB数据库访问技术(要提交)下面的SQL语句要求在“学生成绩管理”数据库进行测试。
下面的实验要在八至十二周内完成,要求提交纸质实验报告,实验报告包括:实验题目、SQL语句及查询结果的截图(查询的名称为自己的学号加姓名)。
【实验2_1】查询学生基本信息表中的所有信息。
SQL语句如下:【实验2_2】在学生基本信息表中查询学生的学号、姓名、性别和族别信息。
SQL语句如下:【实验2_3】从学生基本信息表中查询学生由哪些民族构成。
学生的族别有多行重复,要快速查询学生的民族构成,实际上就是对相同值的族别只需要显示一行,可使用DISTINCT关键字实现。
【实验2_4】从成绩表中查询学生成绩。
SQL语句如下:【实验2_5】从相关表中查询每一位学生的学号、姓名、课程名称、成绩。
【实验2_6】在课程信息表中查找“Delphi程序设计”课程的任课老师。
【实验2_7】查询少数民族学生的基本情况。
【实验2_8】检索1985年1月1日以后出生的女生基本信息。
【实验2_9】查询每位同学的课程门数、总成绩、平均成绩。
【实验2_10】从学生基本信息表中统计各民族学生人数。
【实验2_11】从学生基本信息表中统计汉族学生的人数。
【实验2_12】显示平均成绩大于等于80分以上的学生情况。
【实验2_13】查询学生成绩并将显示的结果按成绩升序排序。
SQL语句如下:【实验2_14】查询1985年出生的学生基本信息。
【实验2_15】查询不及格学生成绩信息。
查询不及格学生成绩信息,也就是查询0—59之间的学生成绩,可用BETWEEN关键字表示为:WHERE 成绩BETWEEN 0 AND 59。
数据库系统上机实验题一、学生学习系统的基本表学生:s(sno,sname,sex,age,dept);表中属性分别为:学号,姓名,性别,年龄和系名。
课程:c(cno,cname,tname);表中属性分别为:课号,课名,教师名。
选课:sc(sno,cno,grade);表中属性分别为:学号,课号和成绩。
要求:利用sql语句创建上面三个基本表,包括:主键,外键定义。
有针对性地输入一些实验数据。
二、利用sql语句,在上面三个基本表,顺利完成如下的功能1.查找学号2至10号学生的学号、姓名和系名。
2.查找女同学的人数。
3.搜寻学号2至10号学生中,女同学的人数。
4.查找男、女同学各有多少人(注:输出性别和人数)。
5.搜寻‘cs’系则中,男、女同学各存有多少人(备注:输入性别和人数)6.搜寻年龄在18至20岁之间的所有男同学的学号、姓名和系名。
7.搜寻所有学生报读课程的门数。
8.查找学号2至15号学生中,英语成绩超过80分的学生学号和姓名。
9.查找没有学习‘物理’课程的学生姓名和系名。
10.查找‘王明’同学所学课程的门数。
11.统计数据‘王明’同学所学各门课程的平均值分数。
12.统计数据英语成绩低于该课程平均值成绩的人数。
13.查找查找至少选修了‘王一’和‘王二’老师所授课程的学生学号与姓名。
14.查找‘cs’系比‘ma’系的学生年龄都小的学生姓名和系名。
15.统计每个学生的总分,输出学生的学号和总分,总分按降序排列。
16.查找学号比‘王一’同学大,而年龄比他小的学生学号、姓名和年龄。
17.查找年龄大于女同学的平均年龄的男同学的姓名与年龄。
18.查找只选修了一门课程的同学的学号和姓名。
19.搜寻‘cs’系则学生中,没报读‘王一’老师课程的学号、姓名和系名。
20.搜寻至少报读了3门课程的学生学号和姓名。
21.搜寻每门课程的最高分和最低分。
(备注:输入课号、最高分和最低分)22.使用查阅视图方式顺利完成21题的功能:利用视图方式的步骤:创建视图,例如:gdf(cno,max,min)属性:课号、最高分和最低分。
实验一 SQL Server 2005 的安装和环境介绍一.实验目的与要求:1.掌握SQL Server 2005 服务器的安装方法2.了解SQL Server 2005 的环境3.了解数据库及其对象二.实验准备1.了解SQL Server 2005的版本2.了解SQL Server 2005各版本对硬件和软件的需求三.实验要求1.写出SQL SERVER 2005的功能与特点, 使用方法, 应用状况的报告2.完成SQL SERVER 2005的安装、启动、登录。
四.实验内容1.安装SQL Server 2005实验一 SQL Server 2005 的安装和环境介绍●实验指导——安装SQL Server 20051.根据安装机器软硬件的要求,选择一个合适的版本,以下以开发版为例2.将 SQL Server 2005 DVD 插入 DVD 驱动器。
如果DVD驱动器的自动运行功能无法启动安装程序无法启动安装程序,请导航到 DVD 的根目录然后启动splash.hta。
3.在自动运行的对话框中,单击“运行 SQL Server 安装向导”。
4.在“最终用户许可协议”页上,阅读许可协议,再选中相应的复选框以接受许可条款和条件。
接受许可协议后即可激活“下一步”按钮。
若要继续,请单击“下一步”若要结束安装程序,请单击“取消”。
如下图:5.在“SQL Server 组件更新”页上,安装程序将安装 SQL Server 2005 的必需软件。
有关组件要求的详细信息,请单击该页底部的“帮助”按钮。
若要开始执行组件更新,请单击“安装”。
更新完成之后若要继续,请单击“完成”。
6.在 SQL Server 安装向导的“欢迎”页上,单击“下一步”以继续安装。
7.在“系统配置检查 (SCC)”页上,将扫描安装计算机,以检查是否存在可能妨碍安装程序的条件。
8.在“注册信息”页上的“姓名”和“公司”文本框中,输入相应的信息。
数据库上机实验题目和答案试用SQL的查询语句表达下列查询:1.检索王丽同学所学课程的课程号和课程名。
select Cno ,Cname from c where Cno in(select cno from sc where sno in (select sno from s where sname='王丽' ))2.检索年龄大于23岁的男学生的学号和姓名。
select sno,sname from swhere sex='男' and age>233.检索‘c01’课程中一门课程的女学生姓名select sname from swhere sex='女' and sno in(select sno from sc where cno='c01')4.检索s01同学不学的课程的课程号。
select cno from cwhere cno not in (select cno from sc where sno ='s01')5.检索至少选修两门课程的学生学号。
select sc.sno from s,scwhere s.sno=sc.snogroup by sc.snohaving count(/doc/1411529677.html,o)>=26.每个学生选修的课程门数。
解法一:select so.sno sno,/doc/1411529677.html,ount,s.sname from(select sc.sno sno,count(sc.sno) ccountfrom sc,swhere s.sno=sc.snogroup by sc.sno ) so,swhere s.sno=so.sno解法二:select sc.sno sno,s.sname,count(sc.sno) ccountfrom sc,swhere s.sno=sc.snogroup by sc.sno,sname7.求选修C4课程的学生的平均分。
实验三写出创建Student、Course和SC表的SQL语句,并建立数据库1、Student:Sno 学号字符串长度7 主键Sname 姓名字符串长度10 非空Ssex 性别字符串长度2Sage 年龄整数Sdept 系字符串长度202、Course:Cno 课程号字符串长度6 主键Cname 课程名字符串长度20 主键Credit 学分整数Semster 学期整数3、SC:Sno 学号字符串长度7 主键,引用student外码Cno 课程号字符串长度6 主键,引用Course外码Grade 成绩实数实验四上文的Student、Course和SC表结构实现如下操作。
1、查询学生选课表中的全部数据。
2、查询计算机系的学生的姓名、年龄。
3、查询成绩在70-80分之间的学生的学号、课程名和成绩。
4、查询计算机系年龄在18-20之间且性别为“男”的学生的姓名、年龄。
5、查询课程号为“c01”的课程的最高的分数。
6、查询计算机系学生的最大年龄和最小年龄。
7、统计每个系的学生人数。
8、统计每门课程的选课人数和考试最高分。
9、统计每个学生的选课门数和考试总成绩,并按选课门数升序显示结果。
10、查询总成绩超过200分的学生,要求列出学号、总成绩。
11、查询选修了“c02”号课程的学生的姓名和所在系。
12、查询成绩80分以上的学生的姓名、课程名和成绩,并按成绩降序排列结果。
13、查询哪些学生没有选课,要求列出学号、姓名和所在系。
14、查询与VB在同一学期开设的课程的课程名和开课学期。
15、查询查询与李勇年龄相同的学生的姓名、所在系和年龄。
16、用子查询实现如下查询:(1)查询选修了“c01”号课程的学生的姓名和所在系。
(2)查询数学系成绩80分以上的学生的学号、姓名、课程号、成绩。
(3)查询计算机系考试成绩最高的学生的姓名。
(4)查询数据结构考试成绩最高的学生的姓名、所在系、性别和成绩。
17、查询没有选修VB课程的学生的姓名和所在系。
数据库上机考试(7)考试说明:请同学们在90分钟内完成以下内容:注意事项:1、根据题目要求,请用自己的“班级+学号+姓名”替换文件名中的*部分,例如要求建立“图书管理库*”,田鹏鹏同学则要输入“图书管理库37号田鹏鹏”,以此类推。
2、要求用SQL命令完成题目,将题目答案粘贴在题目下面红色提示出,保存为WORD文档,以“数据库上机考试+班级+学号+姓名+”命名。
一、创建一个数据库,命名为进销存管理*(10分)SQL命令:create database进销存管理应用技术_1班号on(name=进销存管理应用技术_1班号,filename='D:\进销存管理应用技术_1班号_dat.mdf',size=15M,maxsize=50M,filegrowth=5M)log on(name=进销存管理应用技术_1班号,filename='D:\进销存管理应用技术_1班号_dat.ldf',size=10M,maxsize=40M,filegrowth=5M)二、根据要求创建下表(15分)1、创建客户、产品、入库和销售四张表,表的的结构如下2、客户*SQL命令:CREATE TABLE客户(客户编号varchar(3)NOT NULL,姓名varchar(10)NOT NULL,地址varchar(20),电话varchar(20))GO产品*:SQL命令:CREATE TABLE产品(产品编号varchar(5)NOT NULL,品名varchar(20)NOT NULL,单价Decimal(8,2)NOT NULL,库存数量int NOT NULL)GO入库*:CREATE TABLE入库(产品编号varchar(5)NOT NULL,入库日期Datatime NOT NULL,入库数量int NOT NULL)GO销售*SQL命令:CREATE TABLE销售(产品编号varchar(5)NOT NULL,销售日期Datetime NOT NULL,客户编号varchar(3)NOT NULL,销售数量int NOT NULL)GO请执行以下语句,向表中添加数据:insert into客户values('001','杨婷','深圳','0755-********') insert into客户values('002','陈萍','深圳','0755-********') insert into客户values('003','李东','深圳','0755-********') insert into客户values('004','叶合','广州','020-********') insert into客户values('005','谭新','广州','020-********')insert into产品values('00001','电视',3000.00,800)insert into产品values('00002','空调',2000.00,500)insert into产品values('00003','床',1000.00,300)insert into产品values('00004','餐桌',1500.00,200)insert into产品values('00005','音响',5000.00,600)insert into产品values('00006','沙发',6000.00,100)insert into入库values('2011-1-1','00001',10)insert into入库values('2011-1-1','00002',5)insert into入库values('2011-1-2','00001',5)insert into入库values('2011-1-2','00003',10)insert into入库values('2011-1-3','00001',10)insert into入库values('2011-2-1','00003',20)insert into入库values('2011-2-2','00001',10)insert into入库values('2011-2-3','00004',30)insert into入库values('2011-3-3','00003',20)insert into销售values('2011-1-1','001','00001',10)insert into销售values('2011-1-2','001','00002',5)insert into销售values('2011-1-3','002','00001',5)insert into销售values('2011-2-1','002','00003',10)insert into销售values('2011-2-2','001','00001',10)insert into销售values('2011-2-3','001','00003',20)insert into销售values('2011-3-2','003','00001',10)insert into销售values('2011-3-2','003','00004',30)insert into销售values('2011-3-3','002','00003',20)三、将客户表中的客户编号设为主键。
数据库上机实验内容及要求(第二部分)1.建立工厂管理数据库工厂(包括厂名和厂长名)需要建立一个管理数据库存储以下信息:(1)一个厂内有多个车间,每个车间有车间号、车间主任姓名、地址和联系电话;(2)一个车间有多个工人,每个工人有职工号、姓名、年龄、性别和工种;(3)一个车间生产多种产品,产品有产品号和价格;每种产品只能由一个车间生产;(4)一个车间制造多种零件,一种零件也可能为多个车间制造。
零件有零件号、重量和价格;(5)一种产品可由多种零件组成,一种零件也可以装配出多种产品;(6)产品和零件均存入仓库;(7)厂内有多个仓库,仓库有仓库号、仓库主任姓名和电话。
根据以上需求分析结果,按照下述要求,设计并建立工厂管理数据库。
◆分析实体及联系,设计E-R图。
◆将E-R图转换成关系模式,并规范化到3NF。
◆在Microsoft SQL Server2000中基于“企业管理器”建立数据库及相关对象(主码,外码,索引,约束等)。
◆测试数据入库2.基于“查询分析器”,完成并保存下述题目的SQL脚本(1)建立“工种”是“钳工”的所有职工详细信息的视图;create view View_工人_钳工asselect*from职工表where工种='钳工'with check option(2)建立“车间号”是“CJ01”的钳工详细信息的视图;create view View_钳工_CJ01asselect*from View_工人_钳工where车间号='CJ01'(3)建立使用了“零件号”是“LJ0002”的所有产品详细信息的视图;create view View_产品_零件LJ0002asselect产品表.产品号,价格,车间号,仓库号from装配表,产品表where装配表.产品号=产品表.产品号and零件号='LJ0002'(4)对零件表按照“零件号”建立唯一索引;create unique index Index_U_零件号on零件表(零件号)(5)对职工表按照“性别”建立聚簇索引;create clustered index Index_C_性别on职工表(性别)(6)查询使用了“零件号”是“LJ0002”的产品的生产车间号;select车间号from装配表,产品表where装配表.产品号=产品表.产品号and零件号='LJ0002'(7)查询“职工号”是“ZG0001”的职工所在车间的“车间主任姓名”和“联系电话”;select车间主任姓名,联系电话from职工表,车间表where职工表.车间号=车间表.车间号and职工号='ZG0001'(8)查询使用了“零件号”是“LJ0002”的所有产品的生产车间的“车间主任姓名”和“联系电话”;(连接查询、嵌套查询实现)select车间主任姓名,联系电话from产品表,装配表,车间表where产品表.产品号=装配表.产品号and产品表.车间号=车间表.车间号and装配表.零件号='LJ0002'select车间主任姓名,联系电话from车间表where车间号in(select车间号from产品表where产品号in(select产品号from装配表where零件号='LJ0002'))(9)查询使用了“零件号”是“LJ0002”的所有产品的“产品号”和“零件数量”,且查询结果按照“零件数量”降序排列;select产品号,零件数量from装配表where零件号='LJ0002'order by零件数量desc(10)查询使用了“零件号”是“LJ0002”的产品数;select count(*)as产品数from装配表where装配表.零件号='LJ0002'(11)查询“LJ0002”号零件装配产品的使用总量;select sum(零件数量)as使用总数from装配表where零件号='LJ0002'(12)查询使用了3种以上零件的产品号;select产品号from装配表group by产品号having count(*)>=3【注意】:下机时保存数据库文件(.mdf和.ldf)及SQL脚本文件到U盘。
实验作业要求:这是数据库的上机实验作业题,请大家任选其中的两个数据库,完成以下任务:(1)绘制E-R图(2)写出所有关系模式(即表)(3)写出创建所有表的SQL语句(包括外键参考语句)注意事项:在作业中要明确标出是哪两个数据库。
数据库设计实例一学生选课数据库某学院有基本实体集:系、教师、学生和课程。
它们各有属性:系:系编号、系名,位置课程:课程号,课程名称,开课学期学生:学生学号,学生姓名、性别、地址教师:员工号,教师姓名,办公室实体间有联系:每个系有一位系主任,有多位教师;一个教师仅在一个系任;每个系开设多门不同课程;每门课程各由一位教师授课;一个学生可以在不同的系选修多门课程。
存在联系有:1对1 :系与系主任(系主任是教师)1对多:系与教师、系与课程,教师与课程多对多:学生与课程数据库设计实例二虚拟主机业务管理有实体:职工(职工号、姓名、性别、出生年月、工作类别、职称、密码、备注)主机(主机序号、操作系统、生产厂商、状态、空间数量、备注)用户单位(用户单位名称、联系人姓名、联系电话)实体之间的关系:职工(销售员)与主机的管理关系是一对多的关系一个销售员可销售多台主机,一台主机只能由售员销售。
职工(运行维护员)与主机的维护关系是多对多关系,一个运行维护员可维护多台主机,一台主机能多个运行维护员维护。
职工(管理员)与主机是一对多关系,一个管理员管理多台主机,一台主机只能由一个管理员管理,主机与用户单位是多对多的,一台主机可分配给多个用户单位,一个用户单位可租用多台主机。
每次租用由一位销售员经手数据库设计实例三再就业信息管理有实体:职工(编号、姓名、性别、出生年月、工作类别、职称、工作年限、专业、学历)企业(企业编号、企业名称、企业性质、联系人姓名、联系电话)岗位(岗位编号、岗位名称、学历要求、职称要求、工种、工作年限)实体之间的关系职工与岗位之间的申请关系是多对多的关系,一个职工可申请多个就职岗位,同样一个岗位能被许多职工申请。
附录2上机实验附录2.1 上机实验11.启动“MicroSoft Office Access 2010”,单击“文件”选项卡上左侧窗格的“帮助”,单击中间窗格上的“MicroSoft Office帮助”,便显出“Access帮助”窗口。
单击该帮助窗口中的“Access 2010入门”标题下的“Access 2010数据库设计基础”,便可选看列出的“数据库设计基础”的那些内容。
2.启动“MicroSoft Office Access 2010”,单击“文件”选项卡上左侧窗格的“帮助”,单击中间窗格上的“MicroSoft Office帮助”,便显出“Access帮助”窗口。
单击该帮助窗口中的“Access 2010入门”标题下的“Access 演示”,显出“演示”的主题列表,单击主题列表中的“演示:认识导航窗格”,便可进行观看。
同理,可查看其他的Access帮助信息。
附录2.2 上机实验21.在用户盘的根目录中(如G:\)创建一个名为“上机实验”文件夹。
2.在“上机实验”文件夹中创建一个名为“学生管理系统.accdb”的数据库。
3.在“学生管理系统”数据库中创建如下的表:295296(1)根据表3-2所示的“学系”表结构,创建一个表名为“学系”的表,主键是“学系代码”。
“学系”表中包含学系代码、学系名称、办公电话、学系简介和学系资料等字段。
表3-2 “学系”表结构(2)根据表3-3所示的“专业”表结构,创建一个表名为“专业”的表,主键是“专业代码”。
“专业”表中包含专业代码、专业名称、学制年限、学系代码和专业简介字段。
表3-3 “专业”表结构(3)根据表3-4所示的“班级”表结构,创建一个表名为“班级”的表,主键是“班级号”。
“班级”表中包含班级号、班级名称、年级、专业代码,班主任和联系电话字段。
表3-4 “班级”表结构(4)根据表3-5所示的“学生”表结构,创建一个表名为“学生”的表,主键是“学号”。
上机实验题7相关知识:第14章。
目的:通过本实验,掌握使用函数和存储过程的设计和使用方法。
实验内容:编写满足如下各功能的程序:(1)在Library数据库中创建一个标量值函数Sum(n),求1+2+…+n之和。
并用相关数据进行测试。
(2)在Library数据库中创建一个内联表值函数nbook,返回指定系的学号、姓名、班号、所借图书名和借书日期。
并用相关数据进行测试。
(3)在Library数据库中创建一个多语句表值函数pbook,返回系名和该系所有学生所借图书的平均价格。
并用相关数据进行测试。
(4)设计一个存储过程,查询每种图书品种的数目。
并用相关数据进行测试。
(5)设计一个存储过程,采用模糊查询方式查找借阅指定书名的学生,输出学号、姓名、班号和书名。
并用相关数据进行测试。
设计过程:(1)对应的参考程序如下:USE LibraryGOIF EXISTS(SELECT * FROM sysobjectsWHERE name='Sum' AND type='FN') --如果存在这样的函数则删除之 DROP FUNCTION SumGOCREATE FUNCTION Sum(@n int) --输入参数RETURNS intASBEGINDECLARE @s int,@i intSET @s=0SET @i=1WHILE @i<=@nBEGINSET @s=@s+@iSET @i=@i+1ENDRETURN(@s)ENDGOPRINT '1+2+...+60='+CAST(dbo.Sum(60) AS char(10))GO(2)对应的参考程序如下:USE LibraryGOIF EXISTS(SELECT * FROM sysobjects --如果存在这样的函数则删除之WHERE name='nbook' AND (type='IF' OR type ='TF'))DROP FUNCTION nbookGOCREATE FUNCTION nbook(@dname char(16))--建立函数nbookRETURNS TABLE --返回表,没有指定表结构,这是内联表值函数的特征ASRETURN(SELECT s.学号,s.姓名,s.班号,b.图书名,bor.借书日期FROM student s,depart sc,borrow bor,book bWHERE s.班号=sc.班号 AND s.学号=bor.学号 AND b.图书编号=bor.图书编号 AND sc.系名=@dname)GOSELECT *FROM nbook('计算机系')ORDER BY 学号GO(3)对应的参考程序如下:USE LibraryGOIF EXISTS(SELECT * FROM sysobjects --如果存在这样的函数则删除之WHERE name='pbook' AND (type='IF' OR type ='TF'))DROP FUNCTION pbookGOCREATE FUNCTION pbook() --建立函数pbookRETURNS @st TABLE(系名 char(16),平均价格 decimal(4,1))ASBEGININSERT @st --向@st中插入满足条件的记录SELECT sc.系名 AS '系名',AVG(b.定价) AS '平均价格'FROM depart sc,student s,book b,borrow borWHERE s.班号=sc.班号 AND s.学号=bor.学号 AND b.图书编号=bor.图书编号GROUP BY sc.系名RETURNENDGOSELECT * FROM pbook()GO(4)对应的参考程序如下:USE LibraryGO--若存在存储过程proc1,则删除之IF EXISTS(SELECT * FROM sysobjects WHERE name='proc1'AND type='P')DROP PROCEDURE proc1GO--创建存储过程proc1CREATE PROCEDURE proc1ASSELECT 图书名 AS '书名',COUNT(*) AS '数目'FROM bookGROUP BY 图书名GOEXEC proc1(5)对应的参考程序如下:USE LibraryGO--若存在存储过程proc2,则删除之IF EXISTS(SELECT * FROM sysobjects WHERE name='proc2' AND type='P')DROP PROCEDURE proc2GO--创建存储过程proc2CREATE PROCEDURE proc2(@bn char(16))ASDECLARE @pt char(16)SET @pt='%'+RTRIM(@bn)+'%'SELECT s.学号,s.姓名,s.班号,b.图书名FROM student s,book b,borrow borWHERE s.学号=bor.学号 AND b.图书编号=bor.图书编号AND b.图书名 LIKE @ptORDER BY s.班号GOEXEC proc2 '数'上机实验题8相关知识:第15章。
附录C上机实验C.1第4章上机实验下列实验均使用SQL Server的SSMST具实现。
1. 用图形化方法创建符合如下条件的数据库(创建数据库的方法可参见本书附录A): 数据库名为:学生数据库主要数据文件的逻辑文件名为:Students_data ,存放在D:\Data文件夹下(若D:盘中无此文件夹,请先建立此文件夹,然后再创建数据库。
),初始大小为:5MB 增长方式为自动增长,每次增加1MB日志文件的逻辑文件名字为:Students」og ,也存放在D:\Data文件夹下,初始大小为:2MB增长方式为自动增长,每次增加10%2•选用已建立的“学生数据库”,写出创建满足表C-1到4-4条件的表的SQL语句,并执行所写代码。
(注:“说明”部分不作为表定义内容)表C-4Teacher表结构3. 写出实现如下功能的SQL语句,并执行所写代码,查看执行结果。
(1)在Teacher表中添加一个职称列,列名为:Title ,类型为nchar(4)。
(2)为Teacher表中的Title列增加取值范围约束,取值范围为:{教授,副教授,讲师}。
(3)将Course表中Credit列的类型改为:tinyint 。
(4)删除Student表中的Sid和Sdate列。
(5)为Teacher表添加主键约束,其主键为:Tno。
C.2第5章上机实验本实验均在SQL Server的SSMS工具中实现。
首先在已创建的“学生数据库”中创建本章表5-1~5-3所示的Student、Course和SC表,并插入表5-4~5-6所示数据,然后编写实现如下操作的SQL语句,执行所写的语句,并查看执行结果。
1. 查询SC表中的全部数据。
2. 查询计算机系学生的姓名和年龄。
3. 查询成绩在70〜80分的学生的学号、课程号和成绩。
4. 查询计算机系年龄在18〜20岁的男生姓名和年龄。
5. 查询C001课程的最高分。
6. 查询计算机系学生的最大年龄和最小年龄。
上机实验部分题目及答案一、实验目的1、基本表的定义、修改和删除2、视图的建立、删除和查询3、约束的命名、删除和重定义二、实验结果存放创建表homework8(result ),将每题的题目序号和SQL语句写到此表。
三、实验内容现有图书管理数据库的一个关系模式:book(总编号,分类号,书名,作者,出版单位,单价)1.利用SQL语句创建book的表结构,其中总编号为主码,书名的类型为char(50),并给主码的约束命名(主码约束命名参照第五章内容)。
2.利用SQL在book这个表中分别插入以下所给元组:34、为“数据库导论”设置“出版日期”的值为2009年6月5日,为“计算机基础”设置“出版日期”的值为2008年3月4日。
5、删除总编号为445503的元组。
6、删除列“出版日期”。
7、将列“书名”的类型改为char(100),其中修改列类型的语句为:alter table <表名>[modify 列名数据类型]8、删除book的主码约束(参照第五章)9、将表book中的总编码设置为主码(参照87页内容)。
11.建立表book1,其表结构与内容参照第2题。
12. 为表book1建立科学出版社所出图书的视图science13、删除表book1,其中删除表的格式为:drop table <表名>[restrict|cascade constraint] 其中restrict与cascade参数的含义参照87页14、为表book建立高等教育出版社所出图书的视图education15、查询视图education中的所有内容16、删除视图educationdrop table homework8drop table bookcreate table homework8(ti smallint,res char(400))create table book(总编码char(8) ,分类号char(7),书名char(50),作者char(30),出版单位char(200),单价char(8),constraint total primary key(总编码) )insertinto homework8(ti,res)values (1,'create table book(总编码char(8) ,分类号char(7),书名char(50),作者char(30),出版单位char(200),单价char(8),constraint total primary key(总编码) )')22222222insertinto book(总编码,分类号,书名,作者,出版单位,单价)values ('445501','TP3/12','数据库导论','王强','科学出版社','17.90')insertinto book(总编码,分类号,书名,作者,出版单位,单价)values ('445502','TP3/12','数据库导论','王强','科学出版社','17.90')insertinto book(总编码,分类号,书名,作者,出版单位,单价)values ('445503','TP3/12','数据库导论','王强','科学出版社','17.90')insertinto book(总编码,分类号,书名,作者,出版单位,单价)values ('332211','TP5/10','计算机基础','李伟','高等教育出版社','18.00')3333333alter table bookadd 出版日期char(20)alter table bookadd 页数char(5)444444444444444444444444444444444444444update bookset 出版日期='2009年6月5日'where 书名='数据库导论'update bookset 出版日期='2008年3月4日'where 书名='计算机基础'55555555555555555555555555555555555555 deletefrom bookwhere 总编号='445503'66666666666666666666666666666666666666 alter table bookdrop column 出版日期777777777777777777777777777777777777777 alter table bookmodify 书名char(100)8888888888888888888888888888888888888 alter table bookdrop constraint total9999999999999999999999999999999999999 alter table bookadd primary key (总编码)11 11 11 11 11 11 11 11 11 11 create table book1(总编码char(8) ,分类号char(7),书名char(50),作者char(30),出版单位char(200),单价char(8),constraint total primary key(总编码))12 12 12 12 12 12 12 12 CREATE VIEW scienceASSELECT 总编码,分类号,书名,作者,出版单位,单价FROM book1WHERE 出版单位='科学出版社'13DROP TABLE book114CREATE VIEW educationASSELECT 总编码,分类号,书名,作者,出版单位,单价FROM bookWHERE 出版单位='高等教育出版社'15SELECT *FROM education16DROP VIEW education。
数据库上机实验五篇范文第一篇:数据库上机实验创建数据表与数据输入Part I.使用SQL Server Management Studio创建数据表和输入数据 1.在SQL Server Management Studio中创建数据表 P69 1.(1)-(6)2.为数据表输入数据 P76 4.(1)-(4)3.数据浏览P771.(1)-(2)2.(1)-(3)Part II.使用SQL语句创建数据表和输入数据 1.使用SQL语句创建数据表 P72.例3-22.使用SQL语句输入数据 P82.例3.8习题:P.105(1)(2)insert 数据操作Insert、Update、DeleteP105 3.上机练习题(2)(4)Insert(100001, 1000, 2002-12-18 0:00:00)(100002, 2000, 2010-3-20 0:00:00)Update(100001, 1500, 2002-12-18 0:00:00)(100002, 2000, 2012-9-25 0:00:00)Delete Transact-SQL语句基础1 1.将teaching数据库中score 表的studentno列设置为引用表student的外键。
ALTER TABLE Score ADD CONSTRAINT FK_score_student FOREIGN KEY(studentno)REFERENCES student(studentno)2.将teaching数据库中class表的classname创建UNIQUE约束。
ALTER TABLE class ADD CONSTRAINT UQ_class UNIQUE(classname)执行如下插入语句,查看提示信息INSERT INTO class VALUES(‘090602’, ’计算机0902’, ’计算机学院’, ’马文斐’)3.为teaching数据库中student表的birthday列创建CHECK约束,规定学生的年龄在17-25岁之间。
数据库上机实验作业题本页仅作为文档页封面,使用时可以删除This document is for reference only-rar21year.March数据库上机实验作业题1.从课程表中查询所有课程信息2.从课程表中查询课程类别的信息。
3.从课程表中查询课程类别,要求消除值相同的那些行。
4.从学生表中查询所有的信息,要求只显示查询结果的前6行数据。
5.查询课程表中课程编号、课程名称、教师、上课时间、限制选课人数和报名人数,要求查询结果显示如下:6.查询课程表的信息,要求给出查询结果为:7.在课程表中查询课程类别为“信息技术”,并且学分为“2”的课程。
8.查询课程表的课程信息、报名人数与限选人数之比。
9.查询课程表中最小的报名人数、最大的报名人数以及平均报名人数。
10.查询课程信息、报名人数与限选人数之比。
要求查询结果按照报名人数升降排序。
11.查询课程表的教师名、课程编号、课程名,要求查询结果按照教师名降序排序,教师名相同时,则按照课程编号升序排序。
12.查询课程编号为“004”、“007”、“013”的课程信息。
13.查询课程编号不为“004”、“007”、“013”的课程编号和课程名称。
14.查询课程名以字母D开始的课程信息。
15.查询课程名以“制作”两字结尾的课程信息。
16.查询姓名第二个字为“宝”的学生信息。
17.查询不姓“刘”的学生信息。
18.查询课程表中教师姓名未定的课程信息。
19.查询报名人数少于15人的课程信息。
20.查询报名人数少于25并且多于15人的课程信息。
21.查询报名人数少于25并且等于15人的课程信息,要求查询结果按照报名人数降序排列。
22.查询报名人数少于25并且少于15人的课程信息,要求查询结果按照报名人数降序排列。
23.查询课程表中“信息技术”类课程信息,并计算平均报名人数。
24.按类别显示课程信息,并计算各类课程的平均报名人数。
25.按课程类别分组统计各类课程的平均报名人数。
102.请为下边关系图书(学号,姓名,性别,系部,书号,书名,作者,出版社,借书日期,还书日期,是否续借);医疗(患者编号,患者姓名,患者性别,医生编号,医生姓名,诊断日期,诊断结果,恢复情况,科室编号,科室名称,医生电话,医生职称);教学(学号,姓名,性别,出生日期,系部,系主任,任课教师,课程号,课程名,成绩,学分,教师职务,联系电话);仓库(管理员号,管理员姓名,性别,年龄,商品号,商品名,类别,购入日期,库存量,单位,数量,库房编号,库房名称)化分为第三范式?并指出各关系主码及可能存在的外码。
1、图书(学号,姓名,性别,系部,书号,书名,作者,出版社,借书日期,还书日期,是否续借)图书(书号,书名,作者,出版社)主码:书号读者(学号,姓名,性别,系部)主码:学号借书情况(书号, 学号,借书日期,还书日期,是否续借)主码:书号,借书日期外码:书号,学号2、医疗(患者编号,患者姓名,患者性别,医生编号,医生姓名,诊断日期,诊断结果,恢复情况,科室编号,科室名称,医生电话,医生职称)患者(患者编号,患者姓名,患者性别,)主码:患者编号医生(医生编号,医生姓名)主码:医生编号科室(科室编号,科室名称,医生电话,医生职称)主码:科室编号患者情况(患者编号,患者姓名, 诊断日期,诊断结果,恢复情况)主码:患者编号,诊断日期外码:患者编号,患者姓名3、教学(学号,姓名,性别,出生日期,系部,系主任,任课教师,课程号,课程名,成绩,学分,教师职务,联系电话)学生(学号,姓名,性别,出生日期,系部)主码:学号课程(课程号,课程名,成绩,学分,任课教师)主码:课程号系(系部,系主任)主码:系部教师(教师职务,联系电话,任课教师,系部)主码:教书职务外码:系部4、仓库(管理员号,管理员姓名,性别,年龄,商品号,商品名,类别,购入日期,库存量,单位,数量,库房编号,库房名称)管理员(管理员号,管理员姓名,性别,年龄)主码:管理员号商品(商品号,商品名,类别,购入日期,单位,数量)主码:商品号库房(库房编号,库房名称,库存量,管理员号)主码:库房编号外码:商品号库存(商品号,库房编号,库存量)主码:商品号,库房编号外码:商品号,库房编号103、请设计一个宾馆管理系统数据模型,要求:分析并写出系统有可能涉及的全部数据表(字段名称,类型,长度等等),并指出各表主码及相互间的关联.(提示:系统涉及了房间信息,客户信息,管理人员信息,住宿信息,收费信息等相关内容)(宾馆客房管理系统的数据流——客人信息)(宾馆客房管理系统的数据流——入住登记)(宾馆客房管理系统的数据流——房间状态)。
上机实验题7相关知识:第14章。
目的:通过本实验,掌握使用函数和存储过程的设计和使用方法。
实验内容:编写满足如下各功能的程序:(1)在Library数据库中创建一个标量值函数Sum(n),求1+2+…+n之和。
并用相关数据进行测试。
(2)在Library数据库中创建一个内联表值函数nbook,返回指定系的学号、姓名、班号、所借图书名和借书日期。
并用相关数据进行测试。
(3)在Library数据库中创建一个多语句表值函数pbook,返回系名和该系所有学生所借图书的平均价格。
并用相关数据进行测试。
(4)设计一个存储过程,查询每种图书品种的数目。
并用相关数据进行测试。
(5)设计一个存储过程,采用模糊查询方式查找借阅指定书名的学生,输出学号、姓名、班号和书名。
并用相关数据进行测试。
设计过程:(1)对应的参考程序如下:USE LibraryGOIF EXISTS(SELECT * FROM sysobjectsWHERE name='Sum' AND type='FN') --如果存在这样的函数则删除之 DROP FUNCTION SumGOCREATE FUNCTION Sum(@n int) --输入参数RETURNS intASBEGINDECLARE @s int,@i intSET @s=0SET @i=1WHILE @i<=@nBEGINSET @s=@s+@iSET @i=@i+1ENDRETURN(@s)ENDGOPRINT '1+2+...+60='+CAST(dbo.Sum(60) AS char(10))GO(2)对应的参考程序如下:USE LibraryGOIF EXISTS(SELECT * FROM sysobjects --如果存在这样的函数则删除之WHERE name='nbook' AND (type='IF' OR type ='TF'))DROP FUNCTION nbookGOCREATE FUNCTION nbook(@dname char(16))--建立函数nbookRETURNS TABLE --返回表,没有指定表结构,这是内联表值函数的特征ASRETURN(SELECT s.学号,s.姓名,s.班号,b.图书名,bor.借书日期FROM student s,depart sc,borrow bor,book bWHERE s.班号=sc.班号 AND s.学号=bor.学号 AND b.图书编号=bor.图书编号 AND sc.系名=@dname)GOSELECT *FROM nbook('计算机系')ORDER BY 学号GO(3)对应的参考程序如下:USE LibraryGOIF EXISTS(SELECT * FROM sysobjects --如果存在这样的函数则删除之WHERE name='pbook' AND (type='IF' OR type ='TF'))DROP FUNCTION pbookGOCREATE FUNCTION pbook() --建立函数pbookRETURNS @st TABLE(系名 char(16),平均价格 decimal(4,1))ASBEGININSERT @st --向@st中插入满足条件的记录SELECT sc.系名 AS '系名',AVG(b.定价) AS '平均价格'FROM depart sc,student s,book b,borrow borWHERE s.班号=sc.班号 AND s.学号=bor.学号 AND b.图书编号=bor.图书编号GROUP BY sc.系名RETURNENDGOSELECT * FROM pbook()GO(4)对应的参考程序如下:USE LibraryGO--若存在存储过程proc1,则删除之IF EXISTS(SELECT * FROM sysobjects WHERE name='proc1'AND type='P')DROP PROCEDURE proc1GO--创建存储过程proc1CREATE PROCEDURE proc1ASSELECT 图书名 AS '书名',COUNT(*) AS '数目'FROM bookGROUP BY 图书名GOEXEC proc1(5)对应的参考程序如下:USE LibraryGO--若存在存储过程proc2,则删除之IF EXISTS(SELECT * FROM sysobjects WHERE name='proc2' AND type='P')DROP PROCEDURE proc2GO--创建存储过程proc2CREATE PROCEDURE proc2(@bn char(16))ASDECLARE @pt char(16)SET @pt='%'+RTRIM(@bn)+'%'SELECT s.学号,s.姓名,s.班号,b.图书名FROM student s,book b,borrow borWHERE s.学号=bor.学号 AND b.图书编号=bor.图书编号AND b.图书名 LIKE @ptORDER BY s.班号GOEXEC proc2 '数'上机实验题8相关知识:第15章。
目的:通过本实验,掌握触发器的设计和使用方法。
实验内容:编写满足如下各功能的程序:(1)在borrow上建立一个触发器,完成如下功能:如果读者借阅的书名是“网络工程”,就将该借书记录保存在borrow1表中(borrow1表结构同borrow相同)。
(2)在borrow上建立一个触发器,完成如下功能:当删除borrow表中任何记录时,将该记录保存保存在borrow1表中(borrow1表结构同borrow相同)。
(3)删除前面创建的触发器。
设计过程:(1)对应的参考程序如下:USE LibraryGO--若不存在borrow1表,则通过复制创建表borrow1IF NOT EXISTS(SELECT name FROM sysobjectsWHERE name='borrow1' AND type='U')BEGINSELECT * INTO borrow1 FROM borrowDELETE borrow1ENDGOCREATE TRIGGER trig1 ON borrowFOR INSERT,UPDATEASIF @@ROWCOUNT>0INSERT borrow1 SELECT i.*FROM inserted i,book bWHERE i.图书编号=b.图书编号 AND b.图书名='网络工程'GOINSERT INTO borrow VALUES('11','20090','2014-4-15')GOSELECT * FROM borrow1GO说明:在本实验完成后,请将borrow表中新插入的记录删除,仍保持数据不变。
(2)对应的参考程序如下:USE LibraryGOIF NOT EXISTS(SELECT name FROM sysobjectsWHERE name='borrow1' AND type='U')BEGINSELECT * INTO borrow1 FROM borrowDELETE borrow1ENDGOCREATE TRIGGER trig2 ON borrowFOR DELETEASIF @@ROWCOUNT>0INSERT borrow1 SELECT * FROM deleted GO(3)对应的参考程序如下:USE LibraryGODROP TRIGGER trig1DROP TRIGGER trig2GO上机实验题9相关知识:第16章。
目的:通过本实验,掌握使用T-SQL语句进行SQL Server安全管理的方法。
实验内容:编写满足如下各功能的程序:(1)创建一个登录账号liblog,其密码为“123456”。
(2)为liblog登录账号在Library数据库中创建一个数据库用户账号liblog。
(3)将Library数据库中建表的权限授予libuser数据库用户账号,然后收回该权限。
(4)将Library数据库中表student上的INSERT、UPDATE和DELETE权限授予libuser 数据库用户账号,然后收回该权限。
(5)删除前面创建的登录账号liblog和数据库用户账号libuser。
设计过程:(1)对应的参考程序如下:CREATE LOGIN liblog WITH PASSWORD='123456'GO(2)对应的参考程序如下:USE LibraryCREATE USER libuser FOR LOGIN liblogGO(3)对应的参考程序如下:USE LibraryGOGRANT CREATE TABLE TO libuserGOREVOKE CREATE TABLE FROM libuserGO(4)对应的参考程序如下:USE LibraryGOGRANT INSERT,UPDATE,DELETE ON student TO libuserGOREVOKE INSERT,UPDATE,DELETE ON student FROM libuserGO(5)对应的参考程序如下:DROP LOGIN liblogGOUSE LibraryDROP USER libuserGO。