当前位置:文档之家› 实验报告2 关系数据库标准语言SQL

实验报告2 关系数据库标准语言SQL

实验报告2 关系数据库标准语言SQL
实验报告2 关系数据库标准语言SQL

实验2:关系数据库标准语言SQL

一.实验目的

通过本实验使学生掌握SQL语言的数据定义功能、数据查询功能和数据操纵功能。二.实验类型验证型

三.实验学时4学时

四.实验原理及知识点

1.SQL语言的数据查询功能

2.SQL语言的数据定义功能

3.SQL语言的数据操纵功能

五.实验环境

1.硬件设备要求:PC及其联网环境;

2.软件设备要求:Windows操作系统;MS SQL Server数据库管理系统。

六.实验内容及步骤

在STUDENT数据库中,根据要求使用SQL语言完成下列操作,将SQL语句以.sql文件的形式保存在自己的目录下。

1.查询选修了课程的学生的学号。

2.查询学生学号和出生年份。

3.查询计算机系学生的学号、姓名。

4.查询年龄在20岁与22岁之间(包括20和22岁)的学生姓名和年龄。

5.查询学生姓名中含有“波”字的学生情况。

6.查询缺少学习成绩的学生学号和课程号。

7.查询选修C601课程的学生的学号和成绩,并按分数的降序排列。

8.求选修了课程的学生人数。

9.求课程C601的平均成绩。

10.求选修课程超过2门的学生学号。

11.查询参加学习的学生所学的课程号和总分。

12.查询选修高等数学课程且成绩在80分以上的学生的学号、姓名。

13.查询每一课程的间接先行课(即先行课的先行课)。

14.查询年龄低于所有工程系学生的学生姓名、所在系、年龄。

15.找出刘建平老师所开全部课程的课程号、课程名。

16.找出全部课程的任课教师。

17.求学生1203所学课程的总分。

18.找出所有姓张的学生的姓名和籍贯。

19.找出至少一门课程的成绩在90分以上的女学生的姓名。

20.求每一年龄上人数超过2的男生的具体人数,并按年龄从小到大排序。

21.把学生的学号及他的平均成绩定义为一个视图GRADE_VIEW。

22.创建一个从student、course、study表中查出计算机系的学生及其成绩的视图

computer_view,要求显示学生的学号sno、姓名name、课程号cno、课程名称cname、成绩grade。

23.在Student表中依据学生姓名创建索引name_index。

24.在Study表中依据sno和cno创建索引main_index。

25.将课程C603的任课老师改为“赵明”。

26.在Student表中插入两个学生记录:

'1201','吴华', '女',20,'成都','计算机系'

'1102','张军', '男',21,'上海','工程系'

27.删除年龄在21岁以上的学生记录。

--1

SELECT DISTINCT

Sno'学号'

FROM Student_course;

--2

SELECT

Sno'学号',

2015-Sage'出生年份'

FROM Student;

--3

SELECT

Sname'姓名'

FROM Student

WHERE Sdept='CS';

--4

SELECT

Sname'姓名',

Sage'年龄'

FROM Student

WHERE Sage>=20 and Sage<= 22;

--5

SELECT*

FROM Student

WHERE Sname LIKE'%波%';

--6

SELECT

Sno'学号',

FROM Student_course WHERE Grade is NULL;

--7

SELECT

Sno'学号',

Grade'成绩'

FROM Student_course WHERE Cno='C601' ORDER BY Grade DESC;

--8

SELECT

COUNT(DISTINCT Sno) FROM Student_course;

--9

SELECT

AVG(Grade)

FROM Student_course WHERE Cno='C601';

--10

SELECT

Sno'学号'

FROM Student_course

GROUP BY Sno

HAVING COUNT(Cno)> 2;

--11

SELECT

Cno'课程号',

SUM(Grade)'总分'

FROM Student_course

GROUP BY Cno;

--12

SELECT

Student.Sno,

Student.Sname

FROM Student,Student_course,Course

WHERE Student.Sno=Student_course.Sno

and https://www.doczj.com/doc/4912088046.html,o=Student_https://www.doczj.com/doc/4912088046.html,o

and https://www.doczj.com/doc/4912088046.html,ame='高等数学'and Student_course.Grade> 80;

--13

SELECT

https://www.doczj.com/doc/4912088046.html,o,

SECOND.Cpno

FROM Course FIRST,Course SECOND

WHERE FIRST.Cpno=https://www.doczj.com/doc/4912088046.html,o;

--14

SELECT

Sname,

Sdept,

Sage

FROM Student

WHERE Sage

--15

SELECT

Cno'课程号',

Cname'课程名'

FROM Course

WHERE Cteacher='刘剑平';

--16

SELECT DISTINCT

Cteacher'教师'

FROM Course

WHERE Cteacher is not NULL;

--17

SELECT

SUM(Grade)'总成绩'

FROM Student_course

GROUP BY Sno

HAVING Sno='201215122';

--18

SELECT

Sname'姓名',

Snative'籍贯'

FROM Student

WHERE Sname like'张%';

--19

SELECT

Sname'姓名'

FROM Student

WHERE Ssex='女'and Sno in( SELECT Sno

FROM Student_course

WHERE 90 <=Grade);

--20

SELECT

Sage'年龄',

COUNT(*)'男生人数'

FROM Student

WHERE Ssex='男'and Sage in (SELECT

Sage

FROM Student

GROUP BY Sage

HAVING COUNT(*)>= 2)

GROUP BY Sage

ORDER BY Sage;

--21

CREATE VIEW GRADE_VIEW

AS

SELECT

Sno,

AVG(Grade)Savg

FROM Student_course

GROUP BY Sno;

--22

CREATE VIEW COMPUTER_VIEW

AS

SELECT

Student.Sno,

Student.Sname,

https://www.doczj.com/doc/4912088046.html,o,

https://www.doczj.com/doc/4912088046.html,ame,

Student_course.Grade

FROM Student,Student_course,Course WHERE Student.Sno=Student_course.Sno and Student_https://www.doczj.com/doc/4912088046.html,o=https://www.doczj.com/doc/4912088046.html,o;

--23

CREATE INDEX NAME_INDEX ON Student(Sname);

--24

CREATE INDEX MAIN_INDEX ON Student_course(Sno,Cno);

--25

UPDATE Course

SET Cteacher='赵明'

WHERE Cno='C603';

--26

INSERT

INTO Student

VALUES

('1201','吴华','女',20,'成都','CS'),

('1102','张军','男',21,'上海','EG');

--27

DELETE

FROM Student

WHERE Sage> 21;

七.实验总结

通过这次实验学会了使用SQL查询语句、使用SQL语句插入元组,使用SQL语句删除元组,使用SQL语句创建索引和删除索引,但任然不是很熟练,有很多地方需要查阅书籍才能完成,还是需要多加练习。

关系数据库标准语言SQL练习题

关系数据库标准语言 S Q L练习题 Company number:【0089WT-8898YT-W8CCB-BUUT-202108】

第3章关系数据库标准语言SQL 一.单项选择题 1.SQL语言是▁▁▁▁▁的语言,易学习。 A.过程化 B非过程化 C.格式化 D导航式 B 2.SQL语言是▁▁▁▁▁语言。 A.层次数据库 B.网络数据库 C.关系数据库 D非数据库 3.SQL语言具有▁▁▁▁▁的功能。 A.关系规范化、数据操纵、数据控制 B.数据定义、数据操纵、数据控制 C.数据定义、关系规范化、数据控制 C.数据定义、关系规范化、数据操纵 4.SQL语言的数据操纵语句包括SELECT,INSERT,UPDATE和DELETE等。其中最重要的,也是使用最频繁的语句是▁▁▁▁▁。A.SELECT B.INSERT C.UPDATE D.DELETE 5.在关系代数运算中,五种基本运算为▁▁▁▁▁。 A.并、差、选择、投影、自然连接 B.并、差、交、选择、投影 C.并、差、选择、投影、乘积 D.并、差、交、选择、乘积 6 .SQL语言中,实现数据检索的语句是▁▁▁▁▁。 A.SELECT B.INSERT C.UPDATE D.DELETE 7.下列SQL语句中,修改表结构的是▁▁▁▁▁。 A.ALTER B.CREATE C.UPDATE D.INSERT 第8到第11题基于这样的三个表,即学生表S、课程表C和学生选课表SC,他们的结构如下: S(S#,SN,SEX,AGE,DEPT); C(C#,CN); SC(S#,C#,GRADE) 其中:S#为学号,SN为姓名,SEX为性别,AGE为年龄,DEPT为系别,C#为课程CN为课程名,GPADE为成绩。 8.检索所有比“王华”年龄大的学生姓名、年龄和性别。正确的SELECT语句是▁▁A▁▁。 A.SELECT SN,AGE,SEX FROM S WHERE AGE>(SELECT AGE FROM S WHERE SN=“王华”) B.SELECT SN,AGE,SEX FROM S WHERE SN=“王华” C.SELECT SN,AGE,SEX FROM S WHERE AGE>(SELECT AGE WHERE SN=“王华”) D.SELECT SN,AGE,SEX FROM S WHERE AGE>王华.AGE 9.检索选修课程“C2”的学生中成绩最高的学生的学号。正确的SELECT语句是▁▁D▁▁。 A.SELECT S# FORM SC WHERE C#=“C2”AND GRADE>=(SELECT GRADE FORM SC WHERE C#=“C2”) B.SELECT S# FORM SC WHERE C#=“C2”AND GRADE IN(SELECT GRADE FORM SC WHERE C#=“C2”) C.SELECT S# FORM SC WHERE C#=“C2”AND GRADE NOT IN(SELECT GRADE FORM SC WHERE C#=“C2”) D.SELECT S# FORM SC WHERE C#=“C2”AND GRADE>=ALL(SELECT GRADE FORM SC WHERE C#=“C2”)

sqlserver数据库综合实验报告格式

华北科技学院计算机系综合性实验 实验报告 课程名称数据库原理与应用 实验学期 2009 至 2010 学年第一学期学生所在系部管理系 年级三年级专业班级商务B071班 学生姓名李荣妹学号 4121 任课教师郭红 实验成绩 计算机系制

《数据库原理与应用》课程综合性实验报告

(3)建表如下图: 图书表的结构 读者表的结构罚款表的结构 借阅表的结构密码表的结构 输入数据:图书 读者 S只学生,t指老师,1指没有超期,0表示超期 借阅 罚款

密码: (4)、创建视图。以sa的身份登录数据库,创建视图V1,V2,V3 create VIEW V1 create VIEW V2 create VIEW V3 AS AS AS select * from 图书 select * from 借阅 select * from 罚款 建立视图V5,查看在库的图书:create view V5 as select *from 图书 where 借阅状态=‘在库’ 建立已被借出去的图书视图 create view V6 as

select * from 图书 where 借阅状态='出库' 建立逾期未还的图书的学生视图: create view V7 as select * from 借阅 where datediff(day,convert(smalldatetime,借出日期),getdate())>’30’ and 借书证号 in(select 借书证号 from 读者,借阅 Where 借阅.借书证号=读者.借书证号 and 读者类别=‘s’ 四、物理设计和自定义完整性 建立索引:为了提高在表中搜索元组的速度,在实际实现的时候应该基于键码建立索引是表中建立索引的表项: 图书表(图书编号,条形码号)读者(借书证号)借阅(借书证号,条形码号)罚款表(借书证号,条形码号)密码(借书证号) (2)建立触发器 a.对已有借书证的读者进行查询借书是否超期(这里归定30天): create trigger T1 on 读者 for insert as select 借阅.借书证号,读者.读者姓名,图书.图书编号,图书.书名,借阅.借出日期 from 读者,借阅,图书 where 读者.借书证号=借阅.借书证号 and 图书.条形码号=借阅.条形码号 and 读者类别='s' and Datediff(day,convert(smalldatetime,借出日期),getdate())>=30 b.建立触发器T2(还书时): create trigger T2 on 借阅 for insert as begin update 图书 set 借阅状态='在库' where 条形码号=(select 条形码号 from inserted) update 借阅 set 归还日期=getdate(); update 读者 set 书数=书数-1 where 借书证号=(select 借书证号 from inserted) end c.建立触发器T3(借书书时): create trigger T3 on 借阅 for insert as begin update 图书 set 借阅状态='入库' where 条形码号=(select 条形码号 from inserted) update 借阅 set 借出日期=getdate(); update 读者 set 书数=书数+1 where 借书证号=(select 借书证号 from inserted) end d.建立触发器T4,实现超出借书数目时禁借(针对老师的): create trigger T4 on 读者 for insert

SQL数据库实验报告 (1)

资源与环境科学学院实验报告 一、上机实习名称:SQL Server的安装及数据库的建立 二、实验目的: 1、通过对某个商用数据库管理系统的使用,了解DBMS的工作原理和系统构架。 2、熟悉对DBMS的操作 3、熟悉如何使用SSMS和SQL建立数据库和表,并加深对于完整性的理解。 三、实验内容: 1、根据安装文件的说明安装数据库管理系统。 2、学会启动和停止数据库服务,思考可以用哪些方式来完成启动和停止。 3、掌握管理工具的使用 (1)SQL Server Management Studio的使用 ?连接服务器的方法 ?查询分析器的使用 (2)配置管理器的使用 4、了解数据库系统的逻辑组件: 它们主要是数据库对象,包括基本表、视图、触发器、存储过程、约束等。今后将学习如何操作这些数据库对象。 5.在SSMS中创建数据库和表 四、实验步骤 1. SQL Server 2008的体系结构和特点介绍 SQL Server 是一个关系数据库管理系统。由微软公司2008年第三季度正式发布, SQL Server 2008是一个重大的产品版本,在安全性、可用性、易管理性、可扩展性、商业智能等方面有了更多的改进和提高,对企业的数据存储和应用需求提供了更强大的支持和便利,使得它成为迄今为止最强大和最全面的SQL Server版本。 SQL Server 2008 版本体系:根据不同的用户类型和使用需求,微软公司推出了5种不同的SQL Server版本,包括企业版(Enterprise)、标准版(Standard)、工作组版(Workgroup)、学习版(Express)和移动版(Compact)

VFP实验5 SQL语言的应用-参考答案

实验5 SQL语言的应用 【实验目的】 1.掌握SQL的基本语句的使用 2.掌握SELECT命令的基本用法 3. 掌握对查询的结果进行处理 4.掌握用查询设计器建立查询的方法 【实验内容与操作步骤】 说明:红色字体为答案 设置VFP的默认工作目录为D:\EX7,并完成以下各操作,将操作结果存入D:\EX5文件夹中。 1、使用SQL语句实现下列功能: ( creat table 学生成绩(学号C(7),姓名C(8),入学成绩N(5,1)) (2)使用ALTER TABLE命令,增加一个字段:性别C(2),并将“学号”的字段长度改为8。 alter table 学生成绩add 性别C(2) alter table 学生成绩alter 学号C(8) ( insert into 学生成绩values("0503102","李丽",680,"女") insert into 学生成绩values("0603101","王庆",600,"男") 或者是: Insert into 学生成绩(学号,姓名,入学成绩,性别) values(“0503101”,”张海”,660,”男”) Insert into 学生成绩(学号,姓名,入学成绩,性别) values(“0503102”,”李丽”,680,”女”) Insert into 学生成绩(学号,姓名,入学成绩,性别) values(“0603101”,”王庆”,600,”男”)

庆”,600,”男”) (4)使用DELETE 删除“王庆”的记录。 dele from 学生成绩where 姓名="王庆" (5)使用UPDATE命令将所有人的“入学成绩”置为0。 update 学生成绩set 入学成绩=0 2、使用SQL语句中的SELECT命令来实现下列查询: (1)查询“学生.dbf”表中全部记录,输出“学号”、“姓名”、“性别”、“出生日期”和“入学成绩”这5个字段的内容; select 学号,姓名,性别,出生日期,入学成绩from 学生 (2)查询“学生.dbf”表中的性别为男的所有内容,并按“学号”的降序排列; select * from 学生where 性别=”男” order by 学号 (3)查询“学生.dbf”表中的全部学生中的入学最高分; select max(入学成绩) from 学生 (4)查询“学生.dbf”表中的数学专业和英语专业的学生的学号,姓名和专业; select 学号,姓名,专业from 学生where 专业=”数学” or 专业=”英语” (5)查询“学生.dbf”表中的入学成绩在550到650之间的学生的学号,姓名和入学成绩,并按“入学成绩”的降序排序; select 学号,姓名,入学成绩from 学生where 入学成绩>=550 and 入学成绩<=650 order by 入学成绩 (6)利用学生表中的数据创建一个查询,其结果包含学号、姓名、性别、出生日期、专业和入学成绩6个字段,查询结果按入学成绩由高分到低分排序,并将查询结果保存到一个“学生情况表.DBF”文件中; select 学号,姓名,性别,出生日期,专业,入学成绩from 学生order by 入学成绩desc into table 学生情况表 【思考题】 请参考教材6.4.3 嵌套查询、6.4.4 多表联接查询、6.4.5查询结果输出处理做如下练习。写出相应的SQL命令并上机运行。 (1)查询“学生.dbf”和“学生其它情况.dbf”表中的所有姓“李”的学生的学号、姓名和身份证; (2)查询“成绩.dbf”和“课程.dbf”表中的选修“计算机基础”的所有学生的学号和成绩,按“学号”的升序进行排序,并输出到TEST文件中; (3)查询“学生.dbf”、“成绩.dbf”和“课程.dbf”表中的选修“电脑文秘应用”的所有学生的学号,姓名,课名和总评(总评=(平时+期中+期末)/3);

答案《关系数据库与SQL语言》第一章练习题

《关系数据库与SQL语言》第一章练习题 一、选择题 1、实体完整性要求主属性不能取空值,这一点通常就是通过(B) A、定义外键来保证 B、定义主键来保证 C、用户定义完整性来保证 D、关系系统自动保证 2、建立在计算机外部设备上的结构化的、有联系的数据集合就是( A)。 A、数据库 B、数据库管理系统 C、数据结构 D、数据文件 3、英文缩写 DBA 就是代表( B)。 A、数据库管理系统 B、数据库管理员 C、数据定义语言 D、数据操纵语言 4、数据库设计中,在概念设计阶段可用 E — R 方法,其设计出的图称为( A)。 A、实体联系图 B、实用概念图 C、实体表示图 D、实物示意图 5、在概念设计阶段可用 E —R 图,其中“矩形框”表示实体,( D)表示实体间联系。 A、圆形框 B、椭圆框 C、箭头 D、菱形框 6、一个教师能开多门课程,一门课程有许多教师会开,实体课程与实体教师间就是 ( C)。 A、一对一的联系 B、一对多的联系 C、多对多的联系 D、多对一的联系 7、两个不同型实体间( B)。 A、只有一种联系 B、可以有多种联系 C、不能有联系 D、只有多对多的联系 8、不就是数据库系统中的数据模型就是( D)。 A、层次模型 B、网状模型 C、关系模型 D、多用户型 9、对于两实体间 m:n 联系,必须对“联系”单独建立( D),用来联系双方实体。 A、一个实体 B、一个属性 C、一个指针 D、一个关系 10、模式的逻辑子集通常称为( C) A .存储模式 B .内模式 C .外模式 D .模式 11、要保证数据库物理数据独立性,需要修改的就是 ( B ) 。 A、模式 B、模式与内模式的映射 C、模式与外模式的映射 D、内模式 12、下列四项中,不属于数据库特点的就是 ( C ) 。 A、数据共享 B、数据完整性 C、数据冗余很高 D、数据独立性高 13、数据库中存储的就是 ( D ) 。 A、数据 B、数据模型 C、数据之间的联系 D、数据以及数据之间的联系 14、表示数据库的概念模型一般使用 ( C) 。 A、用户活动图 B、数据流图 C、 E — R 图 D、流程图 15、现有关系表:学生(宿舍编号,宿舍地址,学号,姓名,性别,专业)的主键为:( B ) A、宿舍编号 B、学号 C、宿舍地址,姓名 D、宿舍编号,学号 16、公司中有多个部门与多名职员,每个职员只能属于一个部门,一个部门可以有多名职员,从部门到职员的联系类型就是( D ) A、多对多 B、一对一 C、多对一 D、一对多 17、现有如下关系:职工(职工号、姓名、性别、职务),部门(部门编号、部门名称、职工号、姓名、部门地址、电话)其中,部门关系中的外键就是( C ) A、部门编号 B、姓名 C、职工号 D、职工号,姓名

关系数据库标准语言SQL(一)

关系数据库标准语言SQL(一) (总分:19.00,做题时间:90分钟) 一、{{B}}选择题{{/B}}(总题数:7,分数:7.00) 1.在SQL语言中,删除视图的语句是 ______。 (分数:1.00) A.ALTER VIEW B.DROP VIEW √ C.ZAP VIEW D.DELETE VIEW 解析: 2.关系数据库的数据语言是 ______ 的语言,其核心部分为查询,因此又称为查询语言。 (分数:1.00) A.过程化 B.非过程化√ C.宿主 D.系列化 解析: 3.实现“收回用户U4对学生表STUD中学号(XH)的修改权”这一功能的正确SQL语句是 ______。 (分数:1.00) A.REVOKE UPDAE(XON TABLE FROM U4 B.REVOKE UPDAE(XON TABLE STUD FROM PUBLIC C.REVOKE UPDAE(XON TABLE STUD FROM U4 √ D.REVOKE ALL PRIVILEGES ON TABLE FROM U4 解析: 4.在嵌入式SQL中,主语言向SQL语句输入数据,主要用主变量来实现。为了区别字段名,要求主变量名前必须加符号 ______ 作标志。 (分数:1.00) A.;(分号) B.、(顿号) C.+(加号) D.:(冒号) √ 解析: 5.在SQL语言中,CREATE VIEW语句用于建立视图。如果要求对视图更新时,必须满足子查询中的条件表达式,应当在该语句中使用短语 ______。 (分数:1.00) A.WITH UPDATE B.WITH INSERT C.WITH DELETE D.WITH CHECK OPTION √ 解析: 6.为使程序员编程时既可使用数据语言又可使用常规的程序设计语言,数据库系统需要把数据库语言嵌入到 ______ 中, (分数:1.00) A.编译程序 B.操作系统 C.中间语言 D.宿主语言√

SQL 数据库实验报告3

一、实验内容 (1)掌握在SQL Server管理平台中对表进行插入、修改和删除数据操作的方法。 (2)掌握使用Transact-SQL语句对表进行插入、修改和删除数据操作的方法。 二、实验器材(设备、元器件) Window7操作系统,SQL Server软件 三、实验步骤 (1)启动SQL Server管理平台,在对象资源管理器中展开studentsdb数据库文件夹。 (2)在studentsdb数据库中包含有数据表student_info、curriculum、grade,这些表的数据结构如图所示在studentsdb数据库中包含有数据表student_info、curriculum、grade,这些表的数据结构如图所示 (3)在SQL Server管理平台中创建student_info、curriculum表。 学生基本情况表student_info 课程信息表curriculum

①启动SQL Server管理平台,在对象资源管理器中展开studentsdb数据库文件夹。 ②在SQL Server管理平台中创建student_info表。 ③在SQL Server管理平台中创建curriculum表。 (4)使用Transact-SQL语句CREATE TABLE在studentsdb数据库中创建表 学生成绩表grade

①新建查询,输入Transact-SQL语句,点击执行 ②出现如下界面,学生成绩表grade建立成功 (5)在SQL Server管理平台中,将student_info表的学号列设置为主键,非空。

(6)student_info、curriculum、grade表中的数据如图所示。 student_info的数据 curriculum的数据 grade的数据 (7)在SQL Server管理平台中为student_info表添加数据

SQL-Server数据库上机实验报告

SQL-Server数据库上机实验报告

《数据库系统原理》上机实验报告 学号:1120131743 姓名:谈兆年 班级:07111301

一、实验目的与要求: ●熟练使用SQL语句 ●掌握关系模型上的完整性约束机制 二、实验内容 1:利用SQL语句创建Employee数据库 CREATE DATABASE Employee; 结果: 2:利用SQL语句在Employee数据库中创建人员表person、月薪表salary及部门表dept。 做法:按表1、表2、表3中的字段说明创建 表1 person表结构 字段名数据 类型 字段 长度 允许空 否 字段说明 P_no Char 6 Not Null 工号,主键P_na Varch10 Not 姓名

me ar Null Sex Char 2 Not Null 性别 Birth date Dateti me Null 出生日期 Prof Varch ar 10 Null 职称 Dept no Char 4 Not Null 部门代码,外键 (参照dept表)表2 salary表结构 字段名数据 类型 字段 长度 允许空 否 字段说明 P_no Char 6 Not Null 工号,主键,外键(参照person表) Base Dec 5 Null 基本工资Bonu s Dec 5 Null 奖金,要求>50 Fact Dec 5 Null 实发工资=基本工 资+奖金 Mont h Int 2 Not Null 月份

表3 dept表结构 字段名数据 类型 字段 长度 允许空 否 字段说明 Dept no Char 4 Not Null 部门代码,主键, Dna me Varch ar 10 Not Null 部门名称 程序为: CREATE TABLE dept( deptno CHAR(4) PRIMARY KEY NOT NULL, dname V ARCHAR(10) NOT NULL) CREATE TABLE Person( P_no CHAR(6) PRIMARY KEY Not Null, P_name V ARCHAR(10) Not Null, Sex CHAR(2) Not Null, Birthdate Datetime Null, Prof V ARCHAR(10) Null, Deptno CHAR(4) Not Null, FOREIGN KEY(Deptno) REFERENCES

数据库-SQL语言的实验

北华航天工业学院《数据库原理与应用》 实验报告 报告题目:SQL语言 作者所在系部:计算机系 作者所在专业:网络工程 作者学号:20114052233 作者姓名: 张旭刚 指导教师姓名:李建义 完成时间:20134.24 北华航天工业学院教务处制

SQL语言 一、实验目的 1、理解数据库以及数据表的设计; 2、熟悉SQLServer2005中的数据类型; 3、熟悉使用SQL语句创建和删除模式和索引; 4、掌握使用SQL语句创建、修改和删除数据表; 5、掌握使用SQL语句查询表中的数据; 6、掌握使用SQL语句插入、修改和删除数据表中的数据; 7、掌握使用SQL语句创建、删除、查询和更新视图。 二、实验内容 (一)创建数据库和模式 1、通过SQL语句创建图书信息管理数据库,命名为“db_Library”,数据文件和日志文件放在D盘下以自己学号和姓名命名的文件夹中,数据文件的逻辑名为db_Library_data,数据文件的操作系统名为db_Library_data.mdf,文件初始大小为10MB,最大可增加至300MB,增幅为10%;日志文件的逻辑名为db_Library_log,日志文件的操作系统名为db_Library_data.ldf,文件初始大小为5MB,最大可增加至200MB,增幅为2MB。 2、通过SQL语句在该数据库中创建模式L-C。 (二)创建和管理数据表 要求为各数据表的字段选择合适的数据类型及名称;为各数据表设置相应的完整性约束条件。 1、通过SQL语句将以下数据表创建在L-C模式下: 课程信息表(tb_course)——课程编号、课程名、先修课、学分 2、通过SQL语句将以下数据表创建在该数据库的默认模式dbo下: 图书类别信息表(tb_booktype)——类别编号、类别名称 图书信息表(tb_book)——图书编号、类别编号、书名、作者、出版社、定价、库存数 读者信息表(tb_reader)——读者编号、姓名、性别、学号、班级、系部 借阅信息表(tb_borrow)——图书编号、读者编号、借阅日期、归还日期 3、通过SQL语句对读者信息表进行修改:删除系部字段、添加所在系字段。 4、通过SQL语句对图书信息表进行修改:将定价的数据类型改为REAL。 5、通过SQL语句删除课程信息表。 (三)创建和删除索引 1、使用SQL语句在图书信息表上创建一个非聚簇索引IX_S_QUANTITY,要求按照该表中库存数字段的降序创建。 2、使用SQL语句在读者信息表上创建一个唯一的非聚簇索引IX_S_NAME,要求按照该表中的姓名字段的升序创建。 3、使用SQL语句删除之前创建的两个索引。 (四)数据库及数据表设计 根据周围的实际应用情况,自选一个小型的数据库应用项目进行研究,完成该系统的设计。要求2人一组,通过需求分析,列出系统的主要功能,并完成该系统数据库的逻辑结构设计。例如可选择学籍管理系统、企业进销存管理系统、人事管理系统或在线考试系统等。

关系数据库与SQL语言模拟试卷

关系数据库与SQL语言(共100分) 一.单项选择题(本大题共20题,每小题2分,共40分) 1.候选码中的属性称为_________。[ ] A.非主属性B.主属性 C.复合属性D.关键属性 2.下列“部门”关系中,因哪个属性而使它不满足第一范式________?[ ] 部门(部门号,部门名,部门成员,部门总经理) A.部门总经理B.部门名 C.部门号D.部门成员 3.DML是_____________。[ ] A.数据定义语言B.数据操纵语言 C.数据控制语言D.数据查询语言 4. 关系模型的数据结构是_______________。[ ] A.表B.树 C.有向图D.网络 5.E-R图是进行概念模型设计的有力工具,它的基本成分包含_______________。[ ] A.数据及流向、加工、原点与终点、文件 B.数据、数据类型、长度、取值范围 C.数据项、数据结构、数据流 D.实体型、属性、联系 6.下列有关视图的说法,哪个是正确的。[ ] A.视图是一基本表的子集 B.视图是另一视图的子集 C.视图是关系模型的外模式 D.视图是由一个或多个基本表导出的虚表 7.在SQL语言中,删除表中数据时,应使用的命令是_______________。[ ] A.DELETE B.UPDATE C.ALTER D.DROP 8. 对关系执行“投影”运算后得到的新关系与原关系[ ] A.相同B.相容 C.元组数相同D.不相容 9.DBMS用于保存所有更新数据库操作的文件是____________。[ ] A.事务日志B.数据库 C.数据字典D.索引 10.在关系对应的二维表中,以下说法________是不正确的。[ ]

数据库sqlserver实验报告

实验一熟悉常用的 DBMS:SQL SERVER2008、Oracle 试验内容及要求: (1)了解不同数据库管理系统及不同版本的相应功能特点 目前,商品化的数据库管理系统以关系型数据库为主导产品,技术比较成熟。面向对象的数据库管理系统虽然技术先进,数据库易于开发、维护,但尚未有成熟的产品。国际国内的主导关系型数据库管理系统有Oracle、Sybase、INFORMIX和INGRES。这些产品都支持多平台,如UNIX、VMS、Windows,但支持的程度不一样。IBM的DB2也是成熟的关系型数据库。但是,DB2是内嵌于IBM的AS/400系列机中,只支持OS/400操作系统。 1.MySQL MySQL是最受欢迎的开源SQL数据库管理系统,它由MySQL AB开发、发布和支持。MySQL AB是一家基于MySQL开发人员的商业公司,它是一家使用了一种成功的商业模式来结合开源价值和方法论的第二代开源公司。MySQL是MySQL AB的注册商标。 MySQL是一个快速的、多线程、多用户和健壮的SQL数据库服务器。MySQL服务器支持关键任务、重负载生产系统的使用,也可以将它嵌入到一个大配置(mass- deployed)的软件中去。与其他数据库管理系统相比,MySQL具有以下优势: (1)MySQL是一个关系数据库管理系统。 (2)MySQL是开源的。 (3)MySQL服务器是一个快速的、可靠的和易于使用的数据库服务器。 (4)MySQL服务器工作在客户/服务器或嵌入系统中。 (5)有大量的MySQL软件可以使用。 2.SQL Server SQL Server是由微软开发的数据库管理系统,是Web上最流行的用于存储数据的数据库,它已广泛用于电子商务、银行、保险、电力等与数据库有关的行业。 目前最新版本是SQL Server2005,它只能在Windows上运行,操作系统的系统稳定性对数据库十分重要。并行实施和共存模型并不成熟,很难处理日益增多的用户数和数据卷,伸缩性有限。 SQL Server 提供了众多的Web和电子商务功能,如对XML和Internet标准的丰富支持,

sql实验5(一)

实验报告专用纸 实验5 索引和视图 三、实验内容 1.分别使用企业管理器和Transact-SQL语句为studentsdb数据库的student_info和curriculum创建主键索引。 ①、使用企业管理器为studentsdb数据库的student_info创建主键索引。 ②使用企业管理器为studentsdb数据库的curriculum创建主键索引。(将课程表的课程编号属性设为主键,系统将自动创建主键索引) ③使用Transact-SQL语句为studentsdb数据库的student_info创建主键索引。(将先前创建好的主键移除) create clustered index student_info_idx on student_info(学号)

④使用Transact-SQL语句为studentsdb数据库的curriculum创建主键索引。(将先前创建好的主键移除) create clustered index curriculum_idx on curriculum(课程编号) 2.使用企业管理器按curriculum的课程编号列创建唯一性索引。

3.分别使用企业管理器和Transact-SQL语句为studentsdb数据库的grade表的“分数”字段创建一个非聚集索引,命名为grade_index

①使用企业管理器为studentsdb数据库的grade表的“分数”字段创建一个非聚集索引。 ②使用Transact-SQL语句为studentsdb数据库的grade表的“分数”字段创建一个非聚集索引。(删除之前所创建的索引)

关系数据库与SQL语言练习

第一章 一、选择题 在下列各题A),B),C),D)四个选项中选择一个正确的。 1,数据库(DB)、数据库系统(DBS)、数据库管理系统(DBMS)之间的关系是( C )。 A)DB包含DBS和DBMS B)DBMS包含DB和DBS C)DBS包含DB和DBMS D)没有任何关系 2.数据库系统的核心是( B )。 A)数据模型 B)数据库管理系统 C)数据库 D)数据库管理员 3.数据独立性是数据库技术的重要特点之一。所谓数据独立性是指( D )。 A)数据与程序独立存放 B)不同的数据被存放在不同的文件中 C)不同的数据只能被对应的应用程序所使用 D)以上三种说法都不对 4.用树形结构表示实体之间联系的模型是( C )。 A)关系模型 B)网状模型 C)层次模型 D)以上三个都是 5.“商品”与“顾客”两个实体集之间联系一般是( D )。 A)一对一 B)一对多 C)多对一 D)多对多 6.在E-R图中,.用来表示实体的图形是( A )。 A)矩形 B)椭圆形 C)菱形 D)三角形 7.在数据库管理系统提供的数据语言中,负责数据的模式定义与数据的物理存取构建的是( A )。 A)数据定义语言 B)数据转换语言 c)数据操纵语言 D)数据控制语言 8.数据库系统的三级模式结构中,下列不属于三级模式的是( B )。. A)内模式 B)抽象模式 c)外模式 D)概念模式 9.在数据库管理系统提供的语言中,负责数据的完整性、安全性的定义与检查以及并发控制、故障恢复等功能的是( D )。 A)数据定义语言 B)数据转换语言 c)数据操纵语言 D)数据控制语言 10.下面关于数据系统叙述正确的是( B )。 A)数据库系统避免了一切冗余、’ B)数据库系统减少了数据冗余 c)数据库系统比文件能管理更多的数据 D)、数据库系统中数据的一致性是指数据类型的一致 11.下列叙述中,错误的是( C )。 A)数据库技术的根本目标是要解决数据共享的问题 B)数据库设计是指设计一个能满足用户要求,性能良好的数据库 c)数据库系统中,数据的物理结构必须与逻辑结构一致 D)数据库系统是一个独立的系统,但是需要操作系统的支持 12.在数据库管理系统提供的数据语言中,负责数据的查询及增、删、改等操作的是( D )。 A)数据定义语言 B)数据转换语言 c)数据控制语言 D)数据操纵语言

关系数据库标准语言SQL练习题

第3章关系数据库标准语言SQL 一.单项选择题 1.SQL语言是▁▁▁▁▁的语言,易学习。 A.过程化 B非过程化 C.格式化 D导航式 B 2.SQL语言是▁▁▁▁▁语言。 A.层次数据库 B.网络数据库 C.关系数据库 D非数据库 3.SQL语言具有▁▁▁▁▁的功能。 A.关系规范化、数据操纵、数据控制 B.数据定义、数据操纵、数据控制 C.数据定义、关系规范化、数据控制 C.数据定义、关系规范化、数据操纵 4.SQL语言的数据操纵语句包括SELECT,INSERT,UPDATE和DELETE等。其中最重要的,也是使用最频繁的语句是▁▁▁▁▁。A.SELECT B.INSERT C.UPDATE D.DELETE 5.在关系代数运算中,五种基本运算为▁▁▁▁▁。 A.并、差、选择、投影、自然连接 B.并、差、交、选择、投影 C.并、差、选择、投影、乘积 D.并、差、交、选择、乘积 6 .SQL语言中,实现数据检索的语句是▁▁▁▁▁。 A.SELECT B.INSERT C.UPDATE D.DELETE 7.下列SQL语句中,修改表结构的是▁▁▁▁▁。 A.ALTER B.CREATE C.UPDATE D.INSERT 第8到第11题基于这样的三个表,即学生表S、课程表C和学生选课表SC,他们的结构如下: S(S#,SN,SEX,AGE,DEPT); C(C#,CN); SC(S#,C#,GRADE) 其中:S#为学号,SN为姓名,SEX为性别,AGE为年龄,DEPT为系别,C#为课程CN为课程名,GPADE为成绩。 8.检索所有比“王华”年龄大的学生姓名、年龄和性别。正确的SELECT语句是▁▁A▁▁。 A.SELECT SN,AGE,SEX FROM S WHERE AGE>(SELECT AGE FROM S WHERE SN=“王华”) B.SELECT SN,AGE,SEX FROM S WHERE SN=“王华” C.SELECT SN,AGE,SEX FROM S WHERE AGE>(SELECT AGE WHERE SN=“王华”) D.SELECT SN,AGE,SEX FROM S WHERE AGE>王华.AGE 9.检索选修课程“C2”的学生中成绩最高的学生的学号。正确的SELECT语句是▁▁D▁▁。 A.SELECT S# FORM SC WHERE C#=“C2”AND GRADE>=(SELECT GRADE FORM SC WHERE C#=“C2”) B.SELECT S# FORM SC WHERE C#=“C2”AND GRADE IN(SELECT GRADE FORM SC WHERE C#=“C2”) C.SELECT S# FORM SC WHERE C#=“C2”AND GRADE NOT IN(SELECT GRADE FORM SC WHERE C#=“C2”) D.SELECT S# FORM SC WHERE C#=“C2”AND GRADE>=ALL(SELECT GRADE FORM SC WHERE C#=“C2”) 10.检索学生姓名及其所选修课程号和成绩。正确的SELECT语句是▁▁▁C▁▁。

数据库实验报告

数据库实验报告 集团文件版本号:(M928-T898-M248-WU2669-I2896-DQ586-M1988)

课程名称:数据库原理与应用 实验内容:数据库安全性管理 作者所在系部:网络工程系 作者所在专业:网络工程 作者所在班级: B13521 作者姓名:李文阳 作者学号: 指导教师姓名:王振夺 北华航天工业学院教务处制 实验四数据库安全性管理 一、实验目的 1、理解数据库的安全性机制; 2、掌握SQL Server 2005的验证模式、登录管理、用户管理、角色 管理以及权限管理; 二、实验内容 (一)附加上次实验所创建的数据库“db_Library”,并回顾该库的数据表信息。 (二)设置SQL Server的安全验证模式,并以两种方式尝试登录。

(三)登录账户管理 1、以管理员身份登录SQL Server,修改sa的密码。 2、使用SQL语句创建一个SQL Server登录账户,账户名为你的名字拼音,密码自定义。创建完成后,以该账户来进行登录。 3、使用SQL语句来修改上述登录账户的密码。 4、禁用上述登录账户连接SQL Server,并进行验证。 (四)数据库用户管理 1、使用SQL语句添加db_Library数据库用户User2,其登录账户为上题所创建的SQL Server登录账户,使用默认dbo架构,并赋予该用户能够运行Select语句的权限。 (五)权限管理 1、使用SSMS将创建数据表和创建视图的权限授予User2。 2、使用SQL语句将对db_Library数据库中图书信息表的查询、插入、以及对书名和作者列的修改权限授予用户User2。 3、使用SSMS收回User2创建数据表和创建视图的权限。 4、使用SQL语句收回User2修改书名和作者列的权限。 (六)删除上述所建立的数据库用户以及登录账户。 三、实验步骤 主要实现的SQL语句。 使用T-SQL语句创建一个SQL Server登录账户,账户名为你的名字拼音,密码自定义。创建完成后,以该账户来进行登录。

实验五 SQL语句应用

实验5 SQL语句应用 1 实验目的 (1)掌握数据的插入、修改和删除操作。 (2)掌握不同类型的数据查询操作。 2 实验要求 (1)利用SQL语句对图书销售系统表进行插入、修改、删除和查询操作。 3 实验步骤 (1)以bs用户登录BOOKSALES数据库,将表1至表6中的数据插入到数据库的相应表中。 表1CUSTOMERS 表2PUBLISHERS

表3BOOKS 表4ORDERS ORDERITEM 表5 表6PROMOTION

(2)将ISBN为978-7-121-18619-8的图书的零售价格(retail)修改为30。Update books set retail=30 where isbn=’978-7-121-18619-8’; (3)将订单号为1000的订单的发货日期修改为“2013-2-2”。 Update orders set shipdate=to_date('2013-02-02','yyyy-mm-dd') where order_id=1000; (4)已知当前有一个图书表OLDPUBLISHERS,其表中数据如下: publisher_id name contact phone 1 电子工业出版社李明0 2 机械工业出版社孙浩 3 人民邮电出版社张春 4 传智播客吴瑞997990 请将表中的数据与PUBLISHERS中的数据进行合并。 创建表: CREATE TABLE OLDPUBLISHERS ( 2 publisher_id CHAR(10) PRIMARY KEY, 3 name VARCHAR2(25), 4 contact V ARCHAR2(25),

关系数据库与SQL语言考试试题(doc 6页)

关系数据库与SQL语言考试试题(doc 6页)

关系数据库与SQL语言(共100分) A卷 一、单项选择题(本大题共20小题,每小题2分,共40分) 在每小题列出的四个备选项中只有一个是符合题目要求的,请将正确答案代码填写在答题纸相应位置上。 1.在数据管理技术的发展过程中,经历了人工管理阶段、文件系统阶段和数据库系统阶段。在这几个阶段中,数据独立性最高的是阶段。 A.数据库系统 B.文件系统 C.人工管理 D.数据项管理 2.数据库管理系统能实现对数据库中数据的查询、插入、修改和删除等操作,这种功能称为。 A.数据定义功能 B.数据管理功能 C.数据操纵功能D.数据控制功能 3.下述关于数据库系统的正确叙述是。 A.数据库系统减少了数据冗余 B.数据库系统避免了一切冗余 C.数据库系统中数据的一致性是指数据类型一致 D.数据库系统比文件系统能管理更多的数据 4.在数据库的三级模式结构中,描述数据库中全体数据的全局逻辑结构和特征的是。 A.外模式 B.内模式 C.存储模式 D.模式 5.数据库三级模式体系结构的划分,有利于保持数据库的。 A.数据独立性 B.数据安全性 C.结构规范化 D.操作可行性 6.关系数据模型。 A.只能表示实体间的1∶1联系 B.只能表示实体间的1∶n联系

C.只能表示实体间的m∶n联系 D.可以表示实体间的上述三种联系 7.实体是信息世界中的术语,与之对应的数据库术语为。 A.文件 B.数据库 C.字段 D.记录 8.关系数据库管理系统应能实现的专门关系运算包括。 A.排序、索引、统计 B.选择、投影、连接 C.关联、更新、排序 D.显示、打印、制表 9.在关系代数的专门关系运算中,从表中取出满足条件的属性的操作称为投影;从表中选出满足某种条件的元组的操作称为选择;将两个关系中具有共同属性值的元组连接到一起构成新表的操作称为。 A.选择 B.投影 C.连接 D.扫描 10.设有关系R,按条件f对关系R进行选择,正确的是。 A.R?R B.R ?? R C.σ f (R) D.∏ f (R) 11.SQL语言是的语言,易学习。 A.过程化 B.非过程化 C.格式化 D.导航式 12.SQL语言中,实现数据检索的语句是。 A.SELECT B.INSERT C.UPDATE D.DELETE 13.在SQL语言中,对输出结果排序的是_____________。 A、WHERE B、ORDER BY C、GROUP BY D、HAVING 14.在SELECT语句中使用MAX(列名)时,列名____________。 A.必须是数值型 B.必须是字符型 C.必须是数值型或字符型 D.不限制数据类型 15.假定零件关系是P(P#,PNAME,COLOR,WEIGHT),供应商关系是S(S#,SNAME,CITY),供应关系是SP(S#,P#,QUATY)。 要查找提供“螺母”零件的供应商的名字,将涉及到关系。 A.S B.SP,P C.S,SP D.S,P,SP 第16到第18题基于这样的三个表即职工表EMPLOYEE、供应商表SUPPLIER和订

相关主题
文本预览
相关文档 最新文档