文档库 最新最全的文档下载
当前位置:文档库 › 数据库全部试验代码

数据库全部试验代码

数据库全部试验代码
数据库全部试验代码

PDF实验02

CREATEDATABASE SelectCourseBase

ONPRIMARY

(

NAME=SelectCourseBase_dat,

FILENAME='e:\Data\SelectCourseBase_dat.mdf',

size= 10MB,

maxsize= 100MB,

filegrowth= 5MB

)

LOG ON

(

NAME=SelectCourseBaseLog_log,

FILENAME='e:\Data\SelectCourseBaseLog_log.ldf', size= 2MB,

maxsize= 50MB,

filegrowth= 20%

)

USE SelectCourseBase

GO

CREATETABLE Teacher

(

TNO char(5)primarykey notnull,

TNAME nvarchar(20)notnull,

SEX nvarchar(1),

AGE tinyint,

PROF nvarchar(10),

SALY smallint,

COMM smallint,

DEPT nvarchar(10)

)

CREATETABLE Student

(

SNO char(6)primarykey notnull,

SNAME nvarchar(10)notnull,

SEX nvarchar(1),

AGE tinyint,

DEPT nvarchar(10)

)

CREATETABLE Course

(

CNO char(5)primarykey notnull,

CNAME nvarchar(10)notnull,

CPNO char(5),

CTIME tinyint notnull,

CREDIT decimal(3,1)notnull

)

CREATETABLE StudCous

(

SNO char(6)notnull,

CNO char(5)notnull,

SCORE tinyint

primarykey(SNO,CNO)

)

CREATETABLE TeacCous

(

TNO char(5)notnull,

CNO char(5)notnull,

EVAL nvarchar(30)

primarykey(TNO,CNO)

)

实验03

3.1

USE SelectCourseBase

GO

ALTERTABLE Course

ALTERCOLUMN CNAME nvarchar(20)notnull

INSERTINTO Course

VALUES('96201','数学分析','',64,6) INSERTINTO Course

VALUES('95202','DB_Design','',48,5) INSERTINTO Course

VALUES('95203','几何学','95201',54,4) INSERTINTO Course

VALUES('95204','程序设计开发','',64,5) INSERTINTO Course

VALUES('95205','离散数学','',52,4) INSERTINTO Course

VALUES('95206','DataStructure','95204',64,5) INSERTINTO Course

VALUES('95207','数据库技术','',48,3) INSERTINTO Course

VALUES('95208','近世代数','95202',32,6)

USE SelectCourseBase

GO

UPDATE Teacher

SET PROF='副教授',COMM= 5400

WHERE TNAME='宋海涛'

USE SelectCourseBase

GO

deleteFROM Teacher$

WHERE TNAME='宋海涛'

实验04

1)

select*from Student

select SNAME,SNO,DEPT from Student

select SNAME,2018-ageYear_of_birth from Student

select SNAME,age,lower(DEPT)from Student

selectdistinct SNO from StudCous

2 )

select SNAME from Student where DEPT='信息科学'

selectdistinct sno from StudCous where SCORE< 60

select SNAME,DEPT,AGE from Student where AGE<= 19

select SNAME,DEPT,AGE from Student where AGE between 21 and 23

select SNAME,DEPT,AGE from Student where AGE notbetween 21 and 23

select SNAME,SEX,AGE,DEPT from Student where DEPT in('信息科学','应用数学','电子工程')

select SNAME,SEX,AGE,DEPT from Student where DEPT notin('信息科学','应用数学','电子工程')

select SNAME,SNO,SEX from Student where SNAME like'李%'

select SNAME,SNO,SEX from Student where SNAME like'欧阳%'

select SNAME,SNO,SEX from Student where SNAME like'欧阳_'

select SNAME,DEPT from Student where SNAME like'_文%'and SEX='男'

select CNO,CREDIT from Course where CNAME='DB_Design'

select*from Course where CNAME like'DB\_%i__'escape'\'

select CNAME,CTIME,CREDIT from Course where CPNO isnull

select SNO,CNO from StudCous where SCORE isnotnull

select*from Student where AGE>= 22 and DEPT in('信息科学','应用数学')

3)

select SNAME,DEPT from student where DEPT in('信息科学','应用数学')orderby DEPT asc,SNAME desc select*from StudCous where CNO='95205'and SCORE isnotnull orderby SCORE desc

4)

select count(*)from Student

select count(*)from Student where DEPT='计算机科学'

select count(distinct SNO)from StudCous

select AVG(score)from StudCous where CNO='95201'

select max(score)from StudCous where CNO='95201'

select min(score)from StudCous

5)

select CNO,count(*)from StudCous groupby CNO

select sname,avg(score)'平均成绩'from StudCous,Student where Student.SNO=StudCous.SNO

groupby StudCous.SNO,SNAME having count(*)>= 3

4.2

(1)

select Student.SNO,SNAME,CNAME,SCORE from Student,StudCous,Course where Student.SNO=StudCous.SN O and

https://www.wendangku.net/doc/9017593495.html,O=https://www.wendangku.net/doc/9017593495.html,O

select CNAME,TNAME,count(SNO)'选课人数'from StudCous,Course,Teacher,TeacCous

where https://www.wendangku.net/doc/9017593495.html,O=https://www.wendangku.net/doc/9017593495.html,O and https://www.wendangku.net/doc/9017593495.html,O=https://www.wendangku.net/doc/9017593495.html,O and Teacher.TNO=TeacCous.TNO

groupby TNAME,CNAME

select Student.SNO,SNAME from Student,StudCous,Course

where Student.SNO=StudCous.SNO and https://www.wendangku.net/doc/9017593495.html,O=https://www.wendangku.net/doc/9017593495.html,O

and https://www.wendangku.net/doc/9017593495.html,O='95201'and SCORE>= 90

select Student.SNO,SNAME,CNAME,SCORE from Student,StudCous,Course

where Student.SNO=StudCous.SNO and https://www.wendangku.net/doc/9017593495.html,O=https://www.wendangku.net/doc/9017593495.html,O

select SNAME,CNAME,SCORE,TNAME from Student,StudCous,Course,Teacher,TeacCous

where https://www.wendangku.net/doc/9017593495.html,O=https://www.wendangku.net/doc/9017593495.html,O and https://www.wendangku.net/doc/9017593495.html,O=https://www.wendangku.net/doc/9017593495.html,O and Teacher.TNO=TeacCous.TNO and Student.SNO=StudCous.SNO and SCORE<60

(2)

selectfirst.TNAME,https://www.wendangku.net/doc/9017593495.html,M,https://www.wendangku.net/doc/9017593495.html,M from Teacher first,Teacher second

https://www.wendangku.net/doc/9017593495.html,M>https://www.wendangku.net/doc/9017593495.html,M and second.TNAME='石成敏'

selectdistinct SNAME as'姓名',https://www.wendangku.net/doc/9017593495.html,AME as'课程名1',https://www.wendangku.net/doc/9017593495.html,AME as'课程名2'

from CourseC1,CourseC2,StudCousSC1,StudCousSC2,Student

where https://www.wendangku.net/doc/9017593495.html,O=https://www.wendangku.net/doc/9017593495.html,O and https://www.wendangku.net/doc/9017593495.html,O=https://www.wendangku.net/doc/9017593495.html,O and https://www.wendangku.net/doc/9017593495.html,AME='程序设计开发'and https://www.wendangku.net/doc/9017593495.html,AME='数学分析' and SC1.SNO=SC2.SNO and SC1.SNO=Student.SNO

select https://www.wendangku.net/doc/9017593495.html,O,seccous.CPNO from Coursefircous,Courseseccous

where fircous.CPNO=https://www.wendangku.net/doc/9017593495.html,O

(3)

select Student.SNO,Student.SNAME,https://www.wendangku.net/doc/9017593495.html,AME,StudCous.SCORE

from Student leftouterjoin StudCous on(Student.SNO=StudCous.SNO),Course

where https://www.wendangku.net/doc/9017593495.html,O=https://www.wendangku.net/doc/9017593495.html,O

4.3

(1)

select SNAME from Student where SNO in

(select SNO

from StudCous

where CNO='95206')

select TNO,TNAME,PROF from Teacher where PROF in

(select PROF

from Teacher

where TNAME='谭伊腾')

select SNO,SNAME,DEPT from Student where SNO in

(select sno

from StudCous

where CNO in

(select CNO

from Course

where CNAME='数据库技术')

)

select SNO,CNO from StudCousx

where SCORE>=(

select AVG(SCORE)

from StudCousy

where y.SNO=x.SNO)

(2)

select TNAME from Teacher

where TNO=any(

select TNO

from TeacCous

where CNO='95208')

select TNAME from Teacher

where TNO in(

select TNO

from TeacCous

where CNO='95202')

select TNAME,SALY,DEPT from Teacher

where SALY>all(

select SALY

from Teacher

where dept='SOFTWARE'and DEPT<>'SOFTWARE')

select Sname,AGE from Student

where AGE

select AGE

from Student

where DEPT='计算机科学'and dept<>'计算机科学')

select TNAME,DEPT from Teacher

where notexists(

select TNO

from TeacCous

where Teacher.TNO=TeacCous.TNO and CNO='95202')

select SNAME from Student

where exists(

select SNO

from StudCous

where Student.SNO=StudCous.SNO and CNO='95206')

select SNAME from Student

where notexists(

select SNO

from StudCous

where Student.SNO=StudCous.SNO and CNO='95206')

selectdistinct SNO from StudCousx

where notexists(

select*from StudCousy

where y.SNO='734013'

andnotexists

(select*from StudCousz

where z.SNO=x.SNO and https://www.wendangku.net/doc/9017593495.html,O=https://www.wendangku.net/doc/9017593495.html,O))

select SNAME from Student

where notexists(

select*from Course

where notexists

(select*from StudCous

where SNO=StudCous.SNO and CNO=https://www.wendangku.net/doc/9017593495.html,O))

4.4

select*from Student where dept='信息科学'

union

select*from Student where age<= 19

select SNAME from Student,StudCous where Student.SNO=StudCous.SNO and CNO='95203' union

select SNAME from Student,StudCous where Student.SNO=StudCous.SNO and CNO='95208'

实验05

5.1

3

createview View_TechCous as

select TNAME,CNAME from Teacher,Course,TeacCous

where Teacher.TNO=TeacCous.TNO and https://www.wendangku.net/doc/9017593495.html,O=https://www.wendangku.net/doc/9017593495.html,O

4

createview View_XKSTUD as

select SNO,SNAME,SEX,AGE from Student

where DEPT='信息科学'

insertinto View_XKSTUD

values('714022','周大德','男',20)

select*from View_XKSTUD

5

createview View_SXSC as

select Student.SNO,SNAME,CNAME,SCORE from Student,StudCous,Course

where DEPT='应用数学'and Student.SNO=StudCous.SNO

and https://www.wendangku.net/doc/9017593495.html,O=https://www.wendangku.net/doc/9017593495.html,O

6

createview View_SXSC85as

select SNO,SNAME,CNAME,SCORE from View_SXSC

where SCORE>= 85

7

createview View_Birth as

select SNO,SNAME,2018-AGE'SBIRTH'from Student

8

createview View_avg_SCORE as

select SNO,avg(SCORE)'GAVG'from StudCous

groupby SNO

9

createview View_male as

select*from student where SEX='男'

5.2

2.

alterview View_TechCous as

select TNAME,CNAME,CTIMEVCTIME from Teacher,Course,TeacCous where Teacher.TNO=TeacCous.TNO and https://www.wendangku.net/doc/9017593495.html,O=https://www.wendangku.net/doc/9017593495.html,O

5.3

2.

insertinto View_Stud

values('714023','王天佑','男',22,'信息科学')

3.

update View_XKSTUD set SNAME='季洁莉'where SNO='714006'

4.

insertinto View_XKSTUD

values('714024','王晓菲','女',20)

5.

deletefrom view_Stud

deletefrom view_Stud where SNO='714023'

5.4

dropview View_SXSC

数据库系统实验报告 实验三 数据控制(安全性)..

《数据库系统概论》实验报告 题目:实验三数据控制(安全性) 班级姓名学号日期2014年6月6日 一、实验目的 1.通过SQL对数据库进行安全性控制 2.完成教材中例题的上机练习 二、实验平台 微软SQL Server 2000或以上版本。 对于SQL Server 2000,使用查询分析器运行SQL语句,对于SQL Server 2005以上的版本,使用SQL Server Management Studio运行SQL语句。 三、实验内容和要求 使用SQL对数据进行安全性控制,包括授权和权力回收。 操作完成后,查看授权用户是否真正具有所授予的数据操作权利,在权力回收操作之后,用户是否确实丧失了所回收的数据操作权力。 在前几次实验中已经建立了实验数据库,继续在此数据库上进行实验所要求的各项操作。认真填写实验报告,记录所有的实验用例。 四、实验步骤 1.以管理员sa登录数据库,新建DB数据库,然后运行如下SQL语句,创建 我们前几次实验所建立的表。 CREATE TABLE course ( Cno char(4) NOT NULL, Cname char(40) DEFAULT NULL, Cpno char(4) DEFAULT NULL, Ccredit smallint DEFAULT NULL, PRIMARY KEY (Cno) ) ; -- -- 转存表中的数据'course' -- INSERT INTO course (Cno, Cname, Cpno, Ccredit) V ALUES ('1', '数据库', '5', 4); INSERT INTO course (Cno, Cname, Cpno, Ccredit) V ALUES ('2', '数学', NULL, 2);

数据库原理》实验指导书

《数据库原理》实验指导书

目录 实验一SQL SERVER2000数据库的使用 (1) 实验二创建数据库和数据表 (5) 实验三SQL技术 (14) 实验四实现视图 (22) 实验五创建和维护索引 (27) 实验六触发器管理 (32) 实验七数据的备份与恢复 (35) *实验八SQL Server2000安全管理 (40) 实验一 SQL SERVER2000数据库的使用 实验目的 1. 了解Microsoft SQL Server安装方法与步骤 2. 了解SQL Server 2000常用管理工具 3. 初步熟悉系统提供的学习数据库 4. 掌握在线手册的使用 实验内容 一、安装过程 操作要求:本地安装SQL Server 2000,明确安装步骤以及注意事项。 在WindowsXP或Windows2000 Professional操作系统平台下安装SQL Server 2000个人版。 系统安装完毕后,在开始菜单“程序”中新增了如图1.1所示的菜单。 图1.1程序组菜单 二、使用服务管理器 操作要求:对已安装的本地SQL Server服务器,完成启动、暂停和停止操作。 操作1:执行“开始→程序→Microsoft SQL Server→服务管理器”菜单命令,或双击桌面任务栏上“服务管理器”图标按钮,打开“服务管理器”窗口,如图1.2所示。 注意:SQL Server服务管理器用交通信号灯比喻SQL Server的启动()、停止()和暂停()。

图1.2 “服务管理器”窗口 操作2:在窗口中的“服务器”栏,选择要启动的数据库服务器(取决于所安装的实例),在“服务”中选择“SQL Server”,单击“开始/继续”按钮,启动SQL Server。 注意:选择“当启动OS时自动启动服务”复选按钮,可在每次Windwos启动时自动启动SQL Server。 操作3:单击“暂停”按钮,观察信号灯变化;单击“停止”按钮,观察信号灯变化;再次单击“开始/继续”按钮。 操作4:关闭服务管理器窗口(但SQL Server服务仍在运行,任务栏上的“ ” 图标表示服务已启动)。 三、使用企业管理器 操作要求:启动SQL Server的“企业管理器”,查看已安装的数据库实例中系统数据库情况。(如果条件许可,并尝试在企业管理器中通过向导“新建SQL Server注册”,连接SQL Server教学远程数据库服务器。) 图1.3 “企业管理器”窗口 操作1:执行“开始→程序→Microsoft SQL Server→企业管理器”菜单命令,打开“企业管理器”,如图1.1所示。

数据库实验5实验报告

淮海工学院计算机工程学院实验报告书 课程名:《数据库原理及应用》 题目:数据库的完整性 班级:软件132 学号:2013122907 姓名:莹莹

一.目的与要求 1.掌握索引创建和删除的方法; 2.掌握创建视图和使用视图的方法; 3.掌握完整性约束的定义方法,包括primary key、foreign key等。 二.实验容 1.基于前面建立的factory数据库,使用T-SQL语句在worker表的“部门号”列上创建一个非聚集索引,若该索引已经存在,则删除后重建。 2.在salary表的“职工号”和“日期”列创建聚集索引,并且强制唯一性。 3.建立视图view1,查询所有职工的职工号、、部门名和2004年2月工资,并按部门名顺序排列。 4.建立视图view2,查询所有职工的职工号、和平均工资; 5.建立视图view3,查询各部门名和该部门的所有职工平均工资; 6.显示视图view3的定义; 7.实施worker表的“性别”列默认值为“男”的约束; 8.实施salary表的“工资”列值限定在0~9999的约束; 9.实施depart表的“部门号”列值唯一的非聚集索引的约束; 10.为worker表建立外键“部门号”,参考表depart的“部门号”列。 11.建立一个规则sex:性别=’男’ OR 性别=’女’,将其绑定到“性别”上; 12.删除上面第7、8、9和10建立的约束; 13.解除第11题所建立的绑定并删除规则sex。 三.实验步骤 1 USE factory GO --判断是否存在depno索引;若存在,则删除之 IF EXISTS(SELECT name FROM sysindexes WHERE name='depno') DROP INDEX worker.depno GO --创建depno索引 CREATE INDEX depno ON worker(部门号) GO EXEC sp_helpindex worker GO 2 USE factory GO --判断是否存在no_date索引;若存在,则删除之 IF EXISTS(SELECT name FROM sysindexes WHERE name='no_date') DROP INDEX salary.no_date GO --创建no_date索引

数据库上机实验

附录C 上机实验 C.1 第4章上机实验 下列实验均使用SQL Server 的SSMS工具实现。 1.用图形化方法创建符合如下条件的数据库(创建数据库的方法可参见本书附录A): ●数据库名为:学生数据库 ●主要数据文件的逻辑文件名为:Students_data,存放在D:\Data文件夹下(若D: 盘中无此文件夹,请先建立此文件夹,然后再创建数据库。),初始大小为:5MB, 增长方式为自动增长,每次增加1MB。 ●日志文件的逻辑文件名字为:Students_log,也存放在D:\Data文件夹下,初始大 小为:2MB,增长方式为自动增长,每次增加10%。 2.选用已建立的“学生数据库”,写出创建满足表C-1到4-4条件的表的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.查询计算机系学生的最大年龄和最小年龄。 7.统计每个系的学生人数。 8.统计每门课程的选课人数和最高成绩。 9.统计每个学生的选课门数和考试总成绩,并按选课门数升序显示结果。 10.列出总成绩超过200的学生的学号和总成绩。 11.查询选了C002课程的学生姓名和所在系。 12.查询考试成绩80分以上的学生姓名、课程号和成绩,并按成绩降序排列结果。 13.查询与VB在同一学期开设的课程的课程名和开课学期。 14.查询与李勇年龄相同的学生的姓名、所在系和年龄。 15.查询哪些课程没有学生选修,列出课程号和课程名。 16.查询每个学生的选课情况,包括未选课的学生,列出学生的学号、姓名、选的课程号。 17.查询计算机系哪些学生没有选课,列出学生姓名。 18.查询计算机系年龄最大的三个学生的姓名和年龄。 19.列出“VB”课程考试成绩前三名的学生的学号、姓名、所在系和VB成绩。 20.查询选课门数最多的前2位学生,列出学号和选课门数。 21.查询计算机系学生姓名、年龄和年龄情况,其中年龄情况为:如果年龄小于18,则显 示“偏小”;如果年龄在18-22,则显示“合适”;如果年龄大于22,则显示“偏大”。 22.统计每门课程的选课人数,包括有人选的课程和没有人选的课程,列出课程号,选课人 数及选课情况,其中选课情况为:如果此门课程的选课人数超过100人,则显示“人多”; 如果此门课程的选课人数在40~100,则显示“一般”;如果此门课程的选课人数在1~40,则显示“人少”;如果此门课程没有人选,则显示“无人选”。 23.查询计算机系选了VB课程的学生姓名、所在系和考试成绩,并将结果保存到新表 VB_Grade中。

数据库实验报告

合肥师范学院实验报告册 2014 / 2015 学年第2学期 系别计算机学院 实验课程数据库原理 专业 班级 姓名 学号 指导教师

实验一——数据库基本操作 一、实验目的 1.熟悉MS SQL SERVER运行界面,掌握服务器的基本操作。 2.掌握界面操作方法完成用户数据库建立、备份和还原。 3.建立两个实验用的数据库,使用企业管理器和查询分析器对数据库和表进行基本操作。 二、实验预习内容 在认真阅读教材及实验指导书的基础上,上机前请预习以下内容,并在空白处填写相应的步骤或命令。 1.熟悉SQL SERVER 2000 的运行环境,练习服务器基本操作:打开、停止、关闭。 2.使用SQL SERVER 2000 中的企业管理器完成以下任务。 数据库名称:STC 表:STU(sno char(9), sname varchar(50), ssex char(2) , sage int, sdept char(2) ); COUTSES(cno char(3), cname varchar(50), cpno char(3), credit int ); SC(sno char(9), cno char(3), grade int ); 说明:以上为表结构,以sno char(9)为例,说明sno属性设置为字符类型,宽度为9,int指整型数据。 1)建立数据库STC,分别建立以上三张表,并完成数据录入。(表结构及数据参见教材)2)分析并建立各表的主码,用下划线在上面表结构中标出主码。 3)建立各表之间的关联,请简述操作步骤。 (1)CREATE TABLE Stu ( sno char(9), sname varchar(50), ssex char(2), sage int, sdept char(2) ); CREATE TABLE COURSE ( cno char(3), cname varchar(50), cpno char(3), credit int); CREATE TABLE SC ( sno char(9), cno char(3), grade int); 4)参考实验指导书的【第5章数据库的备份和还原】,使用企业管理器对数据库STC 进行备份,并尝试在个人电脑与机房电脑上进行还原,请简述备份、还原操作的步骤。

数据库系统设计实验报告

数据库系统设计实验报告 ――教务管理系统 学院:计算机科学与技术 专业:软件工程 班级: 学号: 姓名: 指导老师:

一、概述 项目背景:数据库课程设计 系统名称:教务管理系统 开发环境:SQL Server 2008 二、需求分析 1、系统的概述 ?一个学校由很多个学院组成,每个学院有多个专业,每个专业有1个或 者多个班级。一个学生只属于1个班级,学生有姓名、学号、性别、身 份证号、入学时间等属性。 ?每个专业的每个年级都有对应的教学计划。教学计划指定了这个专业这 个年级的某门课程在那个学期上,学分、学时是多少。每个学院都设置 有1个教务秘书,这些信息都由教务秘书进行输入。每个院系的课程都 有自己的唯一编码,比如计算机系上的C语言,和电子系上的C语言, 虽然都是同一门课,但是编码是不同的。但是同一个院系中的相同的课 程,课程代码是唯一的。比如计算机学院的07计算机软件专业和计算机 学院的07计算机科学专业都有C语言课程,这两门课程的课程代码是相 同的。 ?教务秘书在每个学期的中间时刻,为下一个学期进行排课,排课的内容 根据教学计划,比如08计算机软件专业的学生,在2009-2010年第2 学期上的课程,可以通过教学计划得知要上什么课程,然后对这些课程 安排上课教师(比如陈越)、上课时间(比如星期2,第1-2节)和地点 (理工楼234),有的课程是单周上,有的双周,也有是每周都上的。 ?在每个学期期末,学生登录到网站上选择下一个学期需要上的课,选择 的时刻,可以选择是否需要教材,如果某门课程的人数选满了,则不能 给任何学生选择了。 ?学生根据选择的课程进行上课,参加考试。每个老师可以用自己的用户 名和密码登陆网站,选择这个学期自己所教的课程(一个老师可以上多 个班级的课程),输入这个班级的成绩,成绩分为期末考试成绩、期中考 试成绩、平时成绩、实验成绩以及总评成绩。这些成绩都需要进行存储。 ?为了保证安全性,老师输入的成绩并不是直接放到最终的成绩表中,而 是放在一个临时的表中,只有当教务秘书审核过后,才导入到最终的成 绩表中。

数据库实验报告五

数据库原理及应用实验报告(五) 实验题目:过程 专业:数字媒体技术 班级:1306班 姓名:***************

运城学院实验报告 专业:数字媒体技术系(班):计算机科学与技术系1306班姓名:************* 课程名称:数据库原理及应用 实验项目:过程实验类型:验证型指导老师:***** 实验地点:软件实验室一时间:2015年12月10日 一、实验目的: 掌握用户存储过程的创建,了解一些常用的系统存储过程,以及调用和删除过程,并熟悉使用存储过程来进行数据库应用程序的设计。 二、实验内容: (1)基于学生—课程数据库创建一存储过程,用于检索数据库中某个专业学生的人数,带有一个输入参数,用于指定专业。执行结果如图二所示: create procedure pro_s @stu_sdept varchar(5) //这是带参数的过程,参数不用()括 As select count(*) as 人数from student where sdept = @ stu_sdept 1、存储过程的执行 execute pro_s 实参//实参可以是变量,也可以是常量 (2)基于学生-课程数据库创建一存储过程,该过程带有一个输入参数,一个输出参数。其中输入参数用于指定学生的学号,输出参数用于返回学生的平均成绩。执行结果如图四所示: create procedure pro_stu @stu_sno char(6),@stu_avg float output //这个带output的是输出参数as select @stu_avg = avg(grade) //将平均值给了变量 from student,sc where student. sno = sc. sno and student.sno=@stu_sno 1.存储过程的执行 declare @stuavg float //用于存放输出变量内容的 execute pro_stu ‘1000’,@stuavg output// 输出参数必须是变量 select @stuavg //看结果 (3)在pubs数据库中建立一个存储过程,用于检索数据库中某一价位的图书信息。参数有两个,用

数据库原理上机实验-代码及截图

《数据库原理》上机实验报告 2017年11月

一、实验目的与要求: ●熟练使用SQL定义子语言、操纵子语言命令语句 ●掌握关系模型上的完整性约束机制 ●掌握一定的数据库管理技术 ●能完成简单的数据库应用开发 二、实验内容 1、实验一到实验十七 (一)数据定义子语言实验(2学时) 实验1:利用SQL语句创建Employee数据库 代码如下: create database Employee; 运行结果: 实验2:利用SQL语句在Employee数据库中创建人员表person、月薪表salary

及部门表dept, 暂不定义外键约束。 要求:按表1、表达、表3中的字段说明创建 表1 person表结构 表2 salary表结构 表3 dept表结构 代码如下: create table person( P_no char(6) not null primary key, P_name varchar(10) not null, Sex char(2) not null, Birthdate datetime null, Prof varchar(10) null, Deptno char(4) not null

); create table salary( P_no char(6) not null primary key, Base dec(5) null, Bonus dec(5) null, Fact dec(5) null, Month int not null ); create table dept( Deptno char(4) not null primary key, Dname varchar(10) not null ); 运行结果:

数据库原理课程设计指导书

数据库原理课程设计指导书 课程名称:数据库原理课程设计 课程编号:40406051 课程类型:必修 学时:1周 学分:1 适用专业:计算机科学与技术、网络工程 编制人:数据库原理课程组 一、课程设计的目的和意义 《数据库原理课程设计》是实践性教案环节之一,是《数据库原理》课程的辅助教案课程。通过课程设计,使学生掌握数据库的基本概念,结合实际的操作和设计,巩固课堂教案内容,使学生掌握数据库系统的基本概念、原理和技术,将理论与实际相结合,应用现有的数据建模工具和数据库经管系统软件,规范、科学地完成一个小型数据库的设计与实现,把理论课与实验课所学内容做一综合,并在此基础上强化学生的实践意识、提高其实际动手能力和创新能力。 二、设计要求: 通过设计一个完整的数据库,使学生掌握数据库设计各阶段的输入、输出、设计环境、目标和方法。熟练掌握两个主要环节——概念结构设计与逻辑结构设计;熟练的使用SQL语言实现数据库的建立、应用和维护。集中安排1周进行课程设计,以小组为单位,一般2~3人为一组,组内自由分工协作。教师讲解数据库的设计方法以及布置题目,要求学生根据题目的需求描述,进行实际调研,提出完整的需求分析报告,建立概念模型、逻辑模型、物理模型,在物理模型中根据需要添加必要的约束、视图、触发器和存储过程等数据库对象,生成创建数据库的脚本,提出物理设计的文档,最后应用某种宿主语言完成主要功能设计和实现。 要求如下: 1、要充分认识课程设计对培养自己的重要性,认真做好设计前的各项准备工作。 2、既要虚心接受老师的指导,又要充分发挥主观能动性。结合课题,独立思考,努力钻研,勤于实践,勇于创新。 3、独立按时完成规定的工作任务,不得弄虚作假,不准抄袭他人内容,否则成绩以不及格计。 4、课程设计期间,无故缺席按旷课处理;缺席时间达四分之一以上者,其成绩按不及格处理。 5、在设计过程中,要严格要求自己,树立严肃、严密、严谨的科学态度,必须按时、按质、按量完成课程设计。 6、小组成员之间,分工明确,但要保持联系畅通,密切合作,培养良好的互相帮助和团队协作精神。 三、课程设计选题的原则 课程设计题目以选用学生相对比较熟悉的业务模型为宜,要求通过本实践性教案环节,能较好地巩固数据库的基本概念、基本原理、关系数据库的设计理论、设计方法等主要相关知识点,针对实际问题设计概念模型,并应用现有的工具完成小型数据库的设计与实现。具体选题见附录。 四、课程设计的一般步骤 课程设计大体分五个阶段: 1、选题与搜集资料:根据分组,选题目,在小组内进行分工,进行系统调查,搜集资料。

数据库上机实验总结(含代码)

实验一 (1)无条件单表查询 select sname NAME,'year of birth:' BIRTH,2004-sage BIRTHDAY,LOWER(sdept) DEPARTMENT FROM student; (2)有条件单表查询 SELECT sname,sdept,sage FROM student WHERE sage NOT BETWEEN 20 AND 23; (3)单表嵌套(一层)查询 SELECT sno,sname,sdept FROM student WHERE sdept IN(SELECT sdept FROM student WHERE sname='刘晨'); (4)复合条件多表查询 SELECT student.sno,sname,cname,grade FROM student ,sc,course WHERE student.sno=sc.sno AND https://www.wendangku.net/doc/9017593495.html,o=https://www.wendangku.net/doc/9017593495.html,o; (5)使用COUNT()的单表查询 SELECT COUNT(*) FROM student; (6)使用AVG()的单表查询 SELECT AVG(grade) '平均成绩' from SC where CNO='1'; (7)查询结果分组 SELECT cno,COUNT(sno) '人数' FROM sc GROUP BY cno; (8)查询结果排序 SELECT * FROM student ORDER BY sdept,sage DESC; (9)使用通配符的查询 SELECT sname,sno,ssex FROM student WHERE sname NOT LIKE'刘%'; (10)使用换码字符的单表查询 SELECT cno,ccredit FROM course WHERE cname LIKE 'DB\_Design'ESCAPE'\'; (11)插入单个元组 插入一个新学生元组 Insert into student (sno,sname,ssex,sdept,sage) values ('200215128','陈冬','男','IS',18) (12)插入子查询结果 对每一个系,求学生平均年龄,并把结果存入数据库 Create table dept_age(sdept char(15),avg_age int) Insert into dept_age(sdept,avg_age) select sdept,avg(sage) from student group by sdept (13)修改某个元组的值 将学生200215121的年龄改为22岁 Update student set sage=’22’ where sno=’200215121’ (14)修改多个元组的值

2016数据库原理实验指导书

信息工程学院 数据库原理实验指导书二零一六年五月

目录 实验一SQL SERVER 2005的安装与启动 (1) 实验二数据库的操作 (11) 实验三SQL SERVER2005查询编辑器 (23) 实验四SQL语言的DDL (31) 实验五SQL语言的DML初步 (34) 实验六DML的数据查询 (36) 实验七数据库综合设计 (40)

实验一SQL Server 2005的安装与启动 一、实验目的 SQL Server 2005是Mircosoft公司推出的关系型网络数据库管理系统,是一个逐步成长起来的大型数据库管理系统。 本次实验了解SQL Server 2005的安装过程,了解SQL Server 2005的启动,熟悉SQL Server 2005软件环境。学会安装SQL Server 2005。 二、实验内容 1.安装SQL Server 2005 (1)将SQL Server 2005(中文开发版)安装盘插入光驱后,SQL Server 2005安装盘将自动启动安装程序;或手动执行光盘根 目录下的Autorun.exe文件,这两种方法都可进行SQL Server 2005的安装。出现如下画面。 (2)选中“运行SQL Server Client 安装向导”进行安装,弹出【最终用户许可协议】界面。

(3)选中【我接受许可条款和条件】选项,单击【下一步】按钮,进入【安装必备组件】界面。 (4)组件安装完成后,单击【下一步】按钮,进入【欢迎使用Microsoft SQL Server 安装向导】界面。

(5)单击【下一步】按钮,进入【系统配置检查】界面。检查完毕将显示检查结果。 (6)检查如果没有错误,单击【下一步】按钮,进入【注册信息】界面。

数据库系统实验

实验指导书 班级:090402 姓名:郑锦坤

序言 数据库是数据管理的最新技术,是计算机科学的重要分支。通过学习重点让大家掌握数据库技术的程序设计思想和方法,学习开发管理系统的技术,并结合PB8.0以上版本和SQL SERVER 2000以上版本上机环境编程测试。 为了达到这个目的,这里安排五个实验单元。 实验报告的内容 1.题目 描述每个实验的内容是什么。 2.需求分析 用E-R图描述数据库的模式设计及每个关系模式的建立;描述数据字典及程序数据流;每个事件、函数或过程 的头和规格说明; 3.源程序清单和结果 源程序要加注释,要有测试数据及结果。

实验1:学习SQL 语句与SQL SERVER的数据库环境(4学时) 本次实验的主要目的在于学会使用SQL SERVER环境建 库的方法,学会SQL SERVER企业管理器和查询分析器的使用,通过数据库操纵环境,了解库的建立、表的建立、数据库 的查询实现方法。实验数据如下: Student SC

实验报告 1 日期: 一.SQL语句实验题目: 1.建立课程表 2.建立学生表 3.建立选课表 4.查询所有学生的详细信息

SELECT Student.SCLASS, Student.SNO,Student.SNAME, Student.SSEX, Student.SAGE , Student.SDEPT,https://www.wendangku.net/doc/9017593495.html,O,SC.GRADE,https://www.wendangku.net/doc/9017593495.html,AME,Course.CPNO,Course. CCREDIT FROM Course,Student,SC WHERE SC.SCLASS=Student.SCLASS AND SC.SNO=Student.SNO AND https://www.wendangku.net/doc/9017593495.html,O=https://www.wendangku.net/doc/9017593495.html,O 5.查询1班的学生号学及姓名 SELECT SNO,SNAME FROM Student WHERE SCLASS='1' 6.查询‘刘晨’的出生年 7.查询姓‘刘’的学生的详细情况

数据库原理实验指导书 (1)

《数据库原理实验指导书》 河南科技大学电子信息工程学院 赵海霞

目录 实验规则 (2) 实验报告要求 (3) 基本实验方法 (3) 实验环境 (3) 实验一:数据定义及更新语句练习 (4) 实验二:简单查询和连接查询 (6) 实验三:分组查询和嵌套查询 (8) 实验四:视图操作和数据控制 (10) 实验五:触发器和存储过程 (12) 选作题目 (14)

实验规则 为了顺利完成实验教学任务,确保人身设备安全,培养严谨、踏实、实事求是的科学作风和爱护国家财产的优良品质,特制定以下实验规则: 1、实验纪律 (1)在实验室不得做和实验无关的事情。 (2)遵守纪律,不迟到,不旷课。 (3)不能拆卸硬件,更不能拿走实验设备或仪器。 (4)保持实验室安静、整洁,爱护公物。 2、实验过程 (1)预习实验内容。自行设计SQL语句。 (2)上机操作。每执行一句记录执行情况,主要是错误信息和错误原因。 (3)检查操作结果是否正确。 (4)根据实验过程的记录书写实验报告。

实验报告要求 1、报告用纸采用统一的河南科技大学实验报告用纸,不得用别的纸张代替。 2、实验报告封面内容 实验名称:(如实验一数据库创建) 班级名称:(如计科101班) 学生学号: 学生姓名: 实验时间: 3、实验报告内容 见各具体实验项目的要求。 基本实验方法 本实验要求熟悉SQL Server环境和数据库的相关知识。 实验环境 Microsoft SQL Server2000

实验一:数据定义及更新语句练习 一、实验目的:熟练掌握用SQL语句实现数据库和基本表的创建、数据的更新。 二、预习要求:实验前复习讲授过的有关创建数据库、基本表的SQL语句,预 习SQL Server2000环境,特别是资源管理器和查询分析器的相关用法。 三、实验内容: (一)用SQL语句建立如下mySPJ数据库,包括S,P,J,和SPJ四个基本表(教材第二章习题5中的四个表),要求实现关系的三类完整性。 S(SNO,SNAME,STA TUS,CITY); P(PNO,PNAME,COLOR,WEIGHT); J(JNO,JNAME,CITY); SPJ(SNO,PNO,JNO,QTY) 供应商表S由供应商代码(SNO)、供应商姓名(SNAME)、供应商状态(STATUS)、供应商所在城市(CITY)组成。 零件表P由零件代码(PNO)、零件名(PNAME)、颜色(COLOR)、重量(WEIGHT)组成。 工程项目表J由工程项目代码(JNO)、工程项目名(JNAME)、工程项目所在城市(CITY)组成。 供应情况表SPJ由供应商代码(SNO)、零件代码(PNO)、工程项目代码(JNO)、供应数量(QTY)组成,表示某供应商供应某种零件给某工程项目的数量为QTY。(二)分别使用插入、删除、修改的方式更新基本表中的数据。 四、实验方法和步骤: (一)使用Microsoft SQL Server企业管理器和查询分析器建立数据库mySPJ: 1.打开“开始->程序->Microsoft SQL Server->企业管理器”; 2.在企业管理器左边的树标签中依次打开“Microsoft SQL Server-> SQL Server 组->(local)(Windows NT)->数据库”, (local)(Windows NT)前的红色标记转化为绿色标记表明NT服务已启动; 3.从企业管理器的“工具”菜单中选择“SQL 查询分析器”,打开查询分析器后,在其窗口书写创建数据库mySPJ的SQL语句,点击执行按钮(或F5键)执行该SQL

数据库系统原理及应用实验全套

数据库系统原理及应用实验指导书 (本科) 福建工程学院计算机与信息科学系计算机软件与理论教研室 浅诺制作 2012年5月

目录 实验一数据定义语言 (1) 实验二 SQL Sever中的单表查询 (5) 实验三 SQL Serve中的连接查询 (8) 实验四 SQL Serve的数据更新、视图 (12) 实验五数据控制(完整性与安全性) (17) 实验六语法元素与流程控制 (22) 实验七存储过程与用户自定义函数 (28) 实验八触发器 (34)

实验一数据定义语言 一、实验目的 1.熟悉SQL Server2000/2005查询分析器。 2.掌握SQL语言的DDL语言,在SQL Server2000/2005环境下采用Transact-SQL实现表 的定义、删除与修改,掌握索引的建立与删除方法。 3.掌握SQL Server2000/2005实现完整性的六种约束。 二、实验内容 1.启动SQL Server2000/2005查询分析器,并连接服务器。 2.创建数据库: (请先在D盘下创建DB文件夹) 1)在SQL Server2000中建立一个StuDB数据库: 有一个数据文件:逻辑名为StuData,文件名为“d:\db\”,文件初始大小为5MB,文件的最大大小不受限制,文件的增长率为2MB; 有一个日志文件,逻辑名为StuLog,文件名为“d:\db\”,文件初始大小为5MB,文件的最大大小为10MB,文件的增长率为10%

2)刷新管理器查看是否创建成功,右击StuDB查看它的属性。 3.设置StuDB为当前数据库。 4.在StuDB数据库中作如下操作: 设有如下关系表S: S(CLASS,SNO, NAME, SEX, AGE), 其中:CLASS为班号,char(5) ;SNO为座号,char(2);NAME为姓名,char(10),设姓名的取值唯一;SEX为性别,char(2) ;AGE为年龄,int,表中主码为班号+座号。 写出实现下列功能的SQL语句。 (1)创建表S; (2)刷新管理器查看表是否创建成功; (3)右击表S插入3个记录:95031班25号李明,男性,21岁; 95101班10号王丽,女性,20岁; 95031班座号为30,名为郑和的学生记录;

数据库实验98235

数据库原理实验指导 实验前准备: 请设计一个企业销售管理据库,其中需要保存的信息如下: 员工信息,包括:员工编号、员工姓名、性别、所属部门、职称、到职日、生日、薪水、填表日期; 客户信息,包括:客户号,客户名称,客户住址,客户电话、邮政编码; 产品信息,包括:产品编号,产品名称; 员工和客户可以签订订单,每签订一个订单,就要保存订单信息,包括:订单编号、客户号、业务员编号、订单金额、订货日期、出货日期、发票号码。 此外,每个订单可能涉及到多种产品,每种产品可能被多个订单订购。因此需要每个订单中每类产品的销售明细,包括每种产品的销售数量、单价、订单日期;要求: (1)给出系统的ER图(可以用word或其它画图工具,如Visio画),要求画出所有的实体,联系,属性以及联系的类型; (2)将ER图转换为关系模型; 实验一 实验名称:数据定义(2课时)

一、实验目的 1、理解数据库模式的概念,通过使用SQL SERVER企业管理器或者My Sql建立数据库和基本表。模式为人事表、客户表、销售表、销售明细表、产品表。熟悉SQL SERVER 企业管理器的使用,并将得到的表生成脚本,然后保存。 2、理解上述基本表之间的关系,建立关系表。 3、掌握修改表结构的基本方法 4、掌握索引和视图的创建方法 二、实验环境 MS SQL SERVER或者My Sql。 三、实验内容与步骤 1、建立一个数据库和五张表的表结构。 (1)/*员工人事表employee */

Create datebase sale; create table employee( emp_no char(5) Not null primary key, emp_name char(10) Not null, sex char(1) Not null, dept char(4) null, title char(6) null, date_hired datetime null, birthday datetime null, salary int null, addr char(50) null, Mod_date datetime Default 0, constraint c1 check(性别in('男','女')) ); (2)/*客户表customer */ create TABLE customer( cust_id char(5) Not null primary key, cust_name char(20) Not null, addr CHAR(40) Not null, tel_no char(10) Not null, zip char(6) null ); (3)/*销售主表sales */

数据库原理与应用实验指导书(第二版)

数据库原理与应用实验指导书 高荣芳编 计算机工程实验室 2011年9月

目录 1实验前的准备 (1) 2 实验1数据库和数据表基本操作 (17) 3 实验2 数据查询 (20) 4 实验3 索引及视图操作 (22) 5 实验4 存储过程和触发器 (23) 6 实验5 T-SQL程序设计 (24) 7 实验6 数据库的完整性控制 (26) 8 实验7 安全管理 (28) 9 实验8 图书借阅信息系统数据库模式设计及应用 (29)

1实验前的准备 1.1 课程实验标准 《数据库原理与应用》是计算机科学与技术专业及相近各专业的一门重要基础理论课程。课程概括性的介绍了数据库技术发展历程,详细介绍了数据库系统的基本概念、基本原理、基本方法,阐述了数据库设计、实现的基本过程,同时也介绍了数据库系统的最新进展。通过本课程的学习,使学生牢固掌握数据库系统的基本概念和基本原理,熟悉数据库系统的主要实现方法,能够根据应用需要分析设计实用的数据库管理系统。 《数据库原理与应用》是一门实践性很强的课程,通过实验实践,配合课堂教学内容加深对数据库系统的基本概念、基本原理、基本方法的理解,掌握数据库系统设计的基本思想和基本步骤,熟悉关系数据库的标准语言SQL,并对关系数据库系统的某一典型系统(如SQL Server 2000)有较深入的了解,使学生对数据库系统有一个完整的、全面的认识。 1.课程实验的目标 《数据库原理与应用》课程上机实验的主要目标是: (1)通过上机操作,加深对数据库系统理论知识的理解。 (2)通过使用具体的数据库管理系统,了解一种实际的数据库管理系统,并掌握 其操作技术。 (3)通过实验题目的上机实践,提高学生的实践动手能力,提高学生的分析问题 和解决问题的能力。 2.主要软件实验环境 操作系统为Microsoft Windows 2000或更高级的版本。 数据库管理系统为Microsoft SQL Server 2000标准版或更高级的版本。 3.课程实验的基本要求 (1)每次实验前,教师需要向学生讲清楚本次实验的目的和基本要求;学生应当先弄清楚相关的理论知识,预习实验内容、方法和步骤,认真准备好实验程序和数据,避免出现盲目上机的行为。 (2)实验1人1组,在规定的时间内,由学生独立完成,出现问题时,教师要做好指导,但不能包办代替。 (3)任课教师要在实验课前清点学生人数,实验中按要求做好学生实验情况及结果记录,实验后认真填写实验记录、批改实验报告。 (4)学生最好自备计算机,课下能多做练习,以便能够熟悉和精通实验内容。 4. 实验项目设置及考核

数据库系统-实验3

实验九触发器的创建与使用 一、实验目的 本实验的目的是使学生进一步掌握SQL Server触发器的创建及使用方法,加深SQL触发器的理解。通过对数据的更新操作体会其触发器的作用。 二、实验准备 结合课堂教学内容,了解触发器的相关知识,掌握触发器的定义,理解触发器的使用方法及其特点。 三、实验要求 1. 掌握T-SQL创建触发器语句Create trigger的使用。 2. 完成所规定的触发器定义要求。 3. 通过数据查询检查触发器的使用效果。 4. 注意操作结果的截图与保存,供撰写实验报告使用。 四、实验内容 1. 在班级表class中增加班级人数(c_total)字段。 2. 为学生表(student)创建INSERT触发器t_inst_stu:新增一名学生时,若其班级编号非空,则将班级表(class)中相应班级的人数(c_total)自动加1。 3. 为学生表(student)创建DELETE触发器t_dele_stu:删除一名学生时,若其班级编号非空,则将班级表(class)中相应班级的人数(c_total)自动减1。 4. 为学生表(student)创建UPDATE触发器t_update_stu: 当某学生所在班号发生变化时(即调到另一班级后),将其原先所在班级的人数(c_total)减1,将新调入的班级班级的人数(c_total)加1。 5. 体会触发器的作用。 五、实验步骤 在查询分析器中完成实验内容。 1. 使用alter table语句在班级表class中增加班级人数(c_total)字段,默认值(DEFAULT)是0; 2. 为学生表(student)分别创建:

数据库实验五

西南石油大学实验报告 注意:在粘贴截图时请保留窗口完整标题,但只需保留关键界面,多余的空白界面请删除。 一、实验课时:2 二、实验目的 (1) 学习如何编写简单的Transact-SQL程序。 (2) 掌握函数的使用。 (3) 学习如何执行Transact-SQL程序。 (4) 掌握简单存储过程的编写方法。 (5) 掌握简单自定义函数的编写方法。 三、实验要求 (1) 使用SQL Server 2008查询分析器。 (2) 严格依照操作步骤进行。 四、实验环境 (1) PC机。 (2) SQL Server 2008。 五、实验内容及步骤 1.使用局部变量、全局变量 (1)定义一个tinyint的整型变量,为其赋值45,并显示变量的值。DECLARE@LENGTH tinyint SET@LENGTH= 45

PRINT@LENGTH; (2)定义一个长度为20的可变长度型字符变量,为其赋值“Welcome to SWPU”,并显示变量的值。 DECLARE@str nchar(20) SET@str='Welcome to SWPU' PRINT@str (3)查询当前数据库服务器名。 select@@SERVERNAME

(4)查询当前数据库管理系统版本。 SELECT@@VERSION; 2.函数的使用 (1) 数学函数的使用 分别用函数求出-3的绝对值,16的平方根,5的三次方。DECLARE@i int; SET@i=-3; SELECT ABS(@i); GO select sqrt(16)

select power(5,3) (2) 字符串函数的使用 1)分别将字符串“china”、“MACHINE”转换成大写、小写字母; select upper('china') select lower('MACHINE')

相关文档
相关文档 最新文档