数据库上机实验1
数据库实验报告
实验(一): 熟练掌握SQL语言实验目的:熟悉上机环境,创建数据库,在数据库上建立关系模式,插入数据,进行相应的查询操作。
实验内容:具体包括如下三部分。
一、熟悉上机环境。
客户/服务器结构,数据库服务器在一台NT服务器上,同学们通过客户机(操作系统为Windows 2000)上安装的SQL Server客户端程序, 使用SQL Server数据库服务器。
具体包括:1.了解SQL Server 环境。
鼠标点击开始,进入“Microsoft SQL Server→企业管理器”,点击SQL Server组下的数据库服务器(服务器名称为NEUC-201S(Windows NT)), 可以看到服务器上的圆形标志变为绿色,说明客户端程序已与服务器连接成功。
点击服务器(NEUC-201S(Windows NT))下的数据库,可以看到服务器上已建立的数据库,你可访问你有权访问的数据库,并进行相应的操作功能。
因为,数据库服务器上建有许多数据库, 每个数据库都有一些合法的用户。
2.鼠标点击开始,进入“Microsoft SQL Server→查询分析器”,输入用户名和口令,进入SQL查询分析器。
如:你登录的客户机为27号,那么请以用户名user27,口令为user27登录,登录后缺省连到数据库user27上,user27/user27是数据库user27的创建者,因此用户user27/ user27具有在数据库user27上创建表等一切权力。
3.在SQL查询分析器环境下,你就可进行SQL命令语句操作了。
二、在数据库useri上创建学生选课有关关系模式,并插入相应的数据,实现有关查询。
1.描述学生、课程情况的E-R图如下,请将其转化为用关系数据模型描述的关系模式CREA TE TABLE Student(Sno CHAR(9) PRIMARY KEY,Sname CHAR(20) UNIQUE,Ssex CHAR(2),Sage SMALLINT,Sdept CHAR(20));CREA TE TABLE Course(Cno CHAR(4) PRIMARY KEY,Cname CHAR(40),Cpno CHAR(4),Ccredit SMALLINT,FOREIGN KEY (Cpno) REFERENCES Course(Cno) );CREA TE TABLE SC(Sno CHAR(9),Cno CHAR(4),Grade SMALLINT,PRIMARY KEY(Sno,Cno),FOREIGN KEY(Sno) REFERENCES Student(Sno), FOREIGN KEY(Cno) REFERENCES Course(Cno) );4在已建立的关系模式之上(已插入一些数据)建立主键约束,参照约束和用户定义的约束(要求学生年龄不小于14岁,不大于35岁),如果约束不能建立,请分析原因,修改后建立上述约束。
数据库上机实验报告
数据库实验(第三次)题目1 实验内容:1. 检索上海产的零件的工程名称;2. 检索供应工程J1零件P1的供应商号SNO;3. 检索供应工程J1零件为红色的供应商号SNO;4. 检索没有使用天津生产的红色零件的工程号JNO;5. 检索至少用了供应商S1所供应的全部零件的工程号JNO;6. 检索购买了零件P1的工程项目号JNO及数量QTY,并要求对查询的结果按数量QTY降序排列。
1select jnamefrom jwhere jno in(select jnofrom spjwhere sno in(select snofrom swhere city ='上海'));2select snofrom spjwhere jno ='j1'and pno ='p1'3selectdistinct snofrom spjwhere pno in(select pnofrom pwhere color='红'and pno in (select pnofrom spjwhere jno ='j1'));4selectdistinct jnofrom spjwhere pno notin(select pnofrom pwhere color ='红'and pno in (select pnofrom spjwhere sno in(select snofrom swhere city ='天津')))5select jnofrom spjwhere sno ='s1'6select jno,qtyfrom spjwhere pno ='p1'orderby qty desc四﹑思考题1. 如何提高数据查询和连接速度。
建立视图2. 试比较连接查询和嵌套查询有些嵌套查询是可以用连接来代替的,而且使用连接的方式,性能要比嵌套查询高出很多当查询涉及多个关系时,用嵌套查询逐步求解结构层次清楚,易于构造,具有结构化程序设计的优点。
数据库上机实验
附录C 上机实验第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语句,并执行所写代码。
(注:“说明”部分不作为表定义内容)列名说明数据类型约束Sno学号普通编码定长字符串,长度为7主键Sname姓名普通编码定长字符串,长度为10非空Ssex性别普通编码定长字符串,长度为2取值范围:{男,女}Sage年龄微整型(tinyint)取值范围:15-45Sdept所在系普通编码不定长字符串,长度为20默认值为“计算机系”Sid身份证号普通编码定长字符串,长度为10取值不重Sdate入学日期日期默认为系统当前日期列名说明数据类型约束Cno课程号普通编码定长字符串,长度为10主键Cname课程名普通编码不定长字符串,长度为20非空Credit学时数整型取值大于0Semester学分小整型列名说明数据类型约束Sno学号普通编码定长字符串,长度为7主键,引用Student的外键Cno课程号普通编码定长字符串,长度为10主键,引用Course的外键Grade成绩小整型取值范围为0-100列名说明数据类型约束3. 写出实现如下功能的SQL语句,并执行所写代码,查看执行结果。
(1)在Teacher表中添加一个职称列,列名为:Title,类型为nchar(4)。
(2)为Teacher表中的Title列增加取值范围约束,取值范围为:{教授,副教授,讲师}。
数据库上机作业(学生学籍管理)
上机实验-1Access2003基本操作一、实验目的1.掌握Access2003数据库的构成;2.熟悉Access2003的用户界面。
二、实验内容在Access2003中打开罗斯文示例数据库,结合该数据库来了解Access 数据库的构成,并熟悉Access2003的用户界面。
1.单击“开始”按钮,指向“程序”,然后单击“Microsoft Access”,启动Access2003。
2.在启动对话框中,单击“打开已有文件”下的“罗斯文示例数据库”。
罗斯文示例数据库通常位于“Program Files\Microsoft Office\Office\Samples”文件夹中,文件名为“Northwind.mdb”。
3.在“数据库”窗口中,单击“对象”栏下的“表”,单击“产品”表对象,然后单击“数据库”窗口的工具栏上的“打开”按钮,在“数据表”视图中查看表中的数据记录。
4.从“视图”菜单中选择“设计视图”命令,以切换到设计视图下,查看表中各个字段的定义,例如字段名、数据类型、字段大小等,然后关闭设计视图窗口。
5.在“数据库”窗口中单击“对象”栏下的“查询”,单击“各类产品”查询对象,然后单击“数据库”窗口工具栏上的“打开”按钮,在“数据表”视图下查看运行查询所返回的记录集合。
6.从“视图”菜单中选择“设计视图”命令,以查看创建和修改查询时的用户界面。
7.从“视图”菜单中选择“SQL视图”命令,以查看创建查询时所生成的SQL语句,然后关闭SQL视图窗口。
8.在“数据库”窗口中单击“对象”栏下的“窗体”,单击“产品”窗体对象,然后单击“数据库”窗口工具栏上的“打开”按钮,在窗体视图下查看窗体的运行结果,并单击窗体下方的箭头按钮,在不同记录之间移动。
9.从“视图”菜单中选择“设计视图”命令,以查看设计窗体时的用户界面。
10.从“视图”菜单中选择“数据表视图”命令,以查看存储在基础表中的数据记录,然后关闭数据表视图窗口。
数据库上机实验
实验一数据表的建立一、实验目的:熟悉Access 2000的操作环境,并了解关系数据库中关系在Access 2000中的表示——数据表,同时掌握数据表建立的不同方法。
二、实验要求:1.掌握Access 2000的启动和退出;2.了解Access 2000的特性;3.熟悉Access 2000的操作界面、窗口组成各元素;4.掌握Access 2000中建立、保存数据库的方法;5.掌握Access 2000中打开数据库的方法;6.掌握在Access 2000数据库中建立数据表的方法;7.掌握数据表中字段属性的设置和修改;8.掌握数据表中数据的输入、修改、添加、删除;9.掌握在Access 2000数据表的两种视图。
三、实验内容:1、启动Access 2000;2、打开已有的数据库文件(如“罗斯文示例数据库”);3、熟悉Access的操作环境,了解其窗口组成各元素;4、通过帮助了解Access 2000的功能和新特性;5、在Access 2000中新建一个SPJ数据库,并在其中用三种不同的方法(数据表视图、表向导、设计视图)新建S、P、J、SPJ四个数据表,各表结构及内容见下页;6、根据表中数据设置各字段的类型及大小,并设置S、P、J表的主键分别为SNO、PNO、JNO,SPJ表的主键为SNO+PNO+JNO,这些字段不能取空值、而且各记录的值互不相同;7、为S表的CITY字段设置有效性规则,限定其输入的城市只能为“天津”、“北京”、“上海”之一;为SPJ表的QTY字段设置有效性规则,限定其输入的数量在100~900之间;8、按表格所示内容输入各表数据;9、练习表中记录的浏览、修改、插入、删除;10、退出Access。
四、实验步骤:1、启动Access 2000在Windows中单击“开始/程序/Microsoft Access”命令即可启动Access,如图1-1所示。
启动Access后,即可看到一个初始对话框出现,如图1-2所示。
数据库实验报告
数据库实验报告实验⼀创建数据库及关系表⼀、实验⽬的1. 掌握SQL Server数据库管理系统的使⽤,能够中该环境中进⾏⽇常数据库操作;2. 掌握在SQL Server中使⽤图形化⼯具创建数据库的⽅法;3.掌握建⽴关系表的语句,掌握定义主码约束及外码约束的语句;4.掌握修改表结构的语句。
⼆、实验要求1.了解SQL Server数据库的组成,会使⽤图形化⼯具创建数据库。
2.编写建⽴表及主、外码约束的T-SQL语句,并执⾏这些语句,在数据库中建⽴符合要求的关系表。
3.编写修改表结构的语句。
三、实验内容和步骤1.创建符合如下条件的数据库:数据库的名字为:Students数据⽂件的逻辑⽂件名为:Students_dat,存放在D:\Test录下(若D:盘中⽆此⼦⽬录,可先建⽴此⽬录,然后再创建数据库。
);⽂件的初始⼤⼩为:5MB;增长⽅式为⾃动增长,每次增加1MB。
⽇志⽂件的逻辑⽂件名字为:Students_log,也存放在D:\Test⽬录下;⽇志⽂件的初始⼤⼩为:2MB;⽇志⽂件的增长⽅式为⾃动增长,每次增加10%。
2.在已建⽴的Students数据库中,写出创建满⾜下述条件的四张表的SQL 语句,并查看执⾏结果。
Teacher表结构Create table student (Sno char(7)primary key,Sname nchar(10)not null,Ssex nchar(2),Sage tinyint,Sdept nvarchar(20),Spec char(10))create table course(Cno char(10),Cname nvarchar(20)not null,Credit int,Semester tinyint,Primary key(Cno))create table sc(Sno char(7)not null,Cno char(10)not null,Grade tinyint,primary key(Sno,Cno),foreign key(Sno )references Student(Sno), foreign key(Cno )references Course(Cno), ) create table teacher(Tno char(8)not null,Tname char(10)not null,Dept nvarchar(20),Salary numeric(6,2),Birthery smalldatetime)执⾏结果:2.写出实现如下操作的SQL语句,并查看执⾏结果:(1)在SC表中添加⼀个新的修课类别列:列名为:XKLB,类型为char(4)。
数据库上机实验题目和答案
数据库上机实验题目和答案试用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课程的学生的平均分。
数据库管理与维护上机指导
二.实验要求
1.掌握在 Windows 操作系统下安装 Oracle 服务器和客户端管理软件 2.了解 Unix 或 Linux 操作系统下安装 Oracle 服务器 3.掌握卸载 Oracle 数据库服务器的方法步骤
三.实验步骤
1.在 Windows 2000 Server 或 Windows XP 下安装 Oracle 服务器 (1)双击安装光盘中的“SETUP”程序图标,出现图 1 所示界面。Oracle 此时正在检查操作系统的配置是否符合 Oracle 的要求,如果有问题就会报错; 如果没有问题会进入图所示的画面。
图 13 安装界面——“概要”对话框
7
PDF 文件使用 "pdfFactory Pro" 试用版本创建
滨州学院计算机科学技术系 数据库管理与维护课程上机指导手册 南理勇
图 14 Oracle 安装界面
图 15 Oracle SCOTT 用户解锁界面
(14)当出现安装结束界面以后,将安装完成界面中的信息记录到文件中, 这对以后数据库维护非常有用。单击“退出(X) ”按钮,退出安装。安装结束 界面如图 16 所示。
(7)选择数据库配置,即选择要创建数据库类型:一般用途、事务处理、 数据仓库、高级。保留默认选项,如图 7 所示。单击“下一步”按钮。
图 7 安装界面——“选择数据库配置”对话框
(8)指定数据库配置选项:数据库命名、数据库字符集、数据库示例是否 创建带样本方案的数据库。保留默认选项,如图 8 所示。单击“下一步”按钮。
2
PDF 文件使用 "pdfFactory Pro" 试用版本创建
滨州学院计算机科学技术系 数据库管理与维护课程上机指导手册 南理勇
数据库上机实验报告 总结
数据库上机实验报告总结
本次数据库上机实验主要是学习和练习 SQL 语句的应用,以及实现数据的增删改查等操作。
通过实验,我深刻理解到数据库在现代信息系统中的重要性,同时也加深了对SQL 语言的认识和理解。
实验一:建立数据库和数据表
在此实验中,我们学会了如何使用 SQL 创建数据库和数据表,并加深了对 SQL 语言的理解。
此外还学会了如何定义主键、外键、约束和索引等。
实验二:数据查询操作
在此实验中,我们学会了如何使用基本的 SELECT 语句实现数据查询的功能,如使用WHERE 子句和 ORDER BY 子句来筛选和排序数据。
综上所述,通过本次上机实验,我深刻认识到数据库在现代信息系统中的重要性,并加深了对 SQL 语言的理解和应用。
此外,还学会了如何使用事务来保障数据的完整性和一致性,这对我今后的工作和学习都是非常有帮助的。
同时,通过实践,我也掌握了实际应用中的操作技巧和实现方法,这对我今后的实际工作也会有所帮助。
数据库上机题
(1)统计每个同学的平均分,按平均分的降序排列。
select Sno,AVG(Grade) from SC group by Sno order by Grade Desc;
(2)查询总分最高的学生的学号。
select Sno from SC GROUP BY Sno having SUM(Grade)>=ALL (
( 3)查询选修了 1 号课程并且选修了以 1 号课程为先行课的课程的学生学号。
select Sno from SC where Cno='1' and Sno in (select Sno from SC where Cno in (Select Cno from Course where Cpno='1'));
select Cno,Cname from Course where Cpno='6' and Ccredit='4';
( 2)查询选修了 1 号课程的学生学号与选修成绩不及格的学生学号的差集。
select Sno from SC where Cno='1' and Grade>=60;
认值等列级数据约束;③实现相关约束:借阅表与图书表之间、借阅表与读者表之间的外码
约束;读者性别只能是“男”或“女”的约束(通过帮助自学)。
create table Book(
Bno varchar(20) primary key,
Bclass varchar(20) unique,
Rno varchar(20),
Lentdate date not null,
primary key (Bno,Rno),
数据库原理及应用最全上机实验及实验答案
实验一 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.在“注册信息”页上的“姓名”和“公司”文本框中,输入相应的信息。
数据库及数据库表的建立实验报告
实验1 数据库及数据库表的建立实验一.实验目的使学生熟悉SQL Server的企业管理器的用法,初步了解SQL Server查询分析器的使用方法,熟悉SQL SERVER的常用数据类型,加深对SQL和SQL语言的查询语句的理解.熟练掌握简单表的创建与修改.二.实验时数3学时三.实验内容(一)基本表的建立:1.建立一个"学生"表Student,它由学号xh,姓名xm,性别xb,年龄nl,所在系xi五个属性组成,其中学号属性不能为空,并且其值是唯一的.2.建立一个"学生"表Student,它由学号xh,姓名xm,性别xb,年龄nl,所在系xi五个属性组成,其中学号属性不能为空,并创建检查约束(nl>0).3.建立一个"学生"表Student,它由学号xh,姓名xm,性别xb,年龄nl,所在系xi五个属性组成,要求学号为主键,xb有默认的值为'男'4.建立"课程kc"包括课程号kch,课程名称kcmc,先修课程xxkc,学分xf,要求建立主键5.建立"成绩登记表cjdj"包括学号xh,程号kch,成绩,要求建立主键及与student及kc表联接的外键(二)基本表的修改:1.在cjdj表中增加一列"任课教师rkjs"2.删除cj表中rkjs一列3.将student表的xm一列允许空值的属性更改成不允许为空,将列xm的长度由char(8)改为char(10)4.增加cjdj表的列cj增加一个约束要求cj>0 and cj<=1005.建立一个临时表,再将其删除6.索引的建立与删除(理解以下语句的含义并上机实践):create unique index stu_xh on student(xh)create index xh_kch on cj(xh asc,kch desc)drop index student.xh_kch四.实验方法在SQL查询分析器"完成以上的任务.并检查所做的操作表现.五.实验步骤:(一)基本表的建立1.建立一个"学生"表Student,它由学号xh,姓名xm,性别xb,年龄nl,所在系xi五个属性组成,其中学号属性不能为空,并且其值是唯一的.程序:CREATE TABLE student1(xh INT PRIMARY KEY,xm CHAR(20),xb CHAR (2),nl INT,xi CHAR(20) );SELECT * FROM student12.建立一个"学生"表Student,它由学号xh,姓名xm,性别xb,年龄nl,所在系xi五个属性组成,其中学号属性不能为空,并创建检查约束(nl>0).程序:CREATE TABLE student2(xh INT PRIMARY KEY,xm CHAR(20),xb CHAR (2),nl INT,xi CHAR(20),CHECK(nl>0));SELECT *FROM student23.建立一个"学生"表Student,它由学号xh,姓名xm,性别xb,年龄nl,所在系xi五个属性组成,要求学号为主键,xb有默认的值为'男'程序:CREATE TABLE student3 (xh INT PRIMARY KEY, xm CHAR(20),xb CHAR (2) DEFAULT'男', nl INT,xi CHAR(20));SELECT *FROM student34.建立"课程kc"包括课程号kch,课程名称kcmc,先修课程xxkc,学分xf,要求建立主键CREATE TABLE kc(kch INT PRIMARY KEY,kcmc CHAR(20),xxkc CHAR (2),xf INT );select *from kc5.建立"成绩登记表cjdj"包括学号xh,程号kch,成绩,要求建立主键及与student及kc表联接的外键程序:CREATE TABLE ciji(xh INT ,kch INT,cj CHAR (20),PRIMARY KEY(xh,kch),FOREIGN KEY(xh) REFERENCES student(xh), FOREIGN KEY(kch) REFERENCES kc(kch), );SELECT *FROM student2(二)基本表的修改:1.在cjdj表中增加一列"任课教师rkjs"程序:alter table cjadd rkjs char(20);select *from cj;2.删除cj表中rkjs一列程序:alter table cijidrop column rkjs ;select *from ciji;3.将student表的xm一列允许空值的属性更改成不允许为空。
数据库上机实验指导
数据库原理实验指导书实验1 数据库模式设计及建立一、实验目的:(1)掌握数据库模式设计,依据实际要求设计表结构,建立表的关系; 比较SQL命令方式和可视化环境管理器方式设计的异同点。
(2)掌握SQL Server查询分析器的使用方法,加深对SQL和SQL语言的查询语句的理解。
熟练掌握简单表的数据查询、数据排序和数据连接查询的操作方法。
二、实验内容:1、分别用sql查询分析器和企业管理器创建表,并设定相应的约束。
要求:在学生管理数据库XSGL中创建如下三个表。
创建名为student(学生信息)的表,表中的各列要求如下:2、创建score –>student表,以及score –>course表的外部键。
3、增加、修改和删除字段,要求:1) 给student表增加一个memo(备注)字段,类型为varchar(200)。
2) 将memo字段的类型修改为varchar(300)。
3) 删除memo 字段。
4、简单查询操作。
该实验包括投影、选择条件表达,数据排序,使用临时表等。
具体完成以下题目,将它们转换为SQL语句表示,在学生选课数据库中实现其数据查询操作。
1)求数学系学生的学号和姓名2)求选修了课程的学生学号3)求选修课程号为‘C1’的学生号和成绩,并要求对查询结果按成绩的降序排列,如果成绩相同按学号的升序排列。
4)求选修课程号为‘C1’且成绩在80~90之间的学生学号和成绩,并成绩乘以0.8输出。
5)求数学系或计算机系姓张的学生的信息。
6)求缺少了成绩的学生的学号和课程号5、连接查询操作。
该实验包括等值连接、自然连接、求笛卡儿积、一般连接、外连接、内连接、左连接、右连接和自连接等。
1)查询每个学生的情况以及他所选修的课程2)求学生的学号、姓名、选修的课程及成绩3)求选修课程号为‘C1’且成绩在90以上的学生学号、姓名和成绩4)查询每一门课程的间接先行课(即先行课的先行课)三、实验方法将查询需求用SQL语言表示;在SQL Server查询分析器的输入区中输入SQL查询语句;设置查询分析器的结果区为Standard Execute(标准执行)或Execute to Grid(网格执行)方式;发布执行命令,并在结果区中查看查询结果;如果结果不正确,要进行修改,直到正确为止。
SQL数据库实验报告(1)
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)Microsoft SQL Server 2008系统由4个主要部分组成。
这4个部分被称为4个服务,这些服务分别是数据库引擎、分析服务、报表服务和集成服务。
2. SQL Server管理⼯作室的启动打开windows控制⾯板—管理—服务,启动SQL Server 服务,如下图(1)开始→程序→Microsoft SQL Server 2008→SQL Server Management Studio(如图1.1所⽰)。
《Access(2010版)》 上机实验1-上机实验9题目
附录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所示的“学生”表结构,创建一个表名为“学生”的表,主键是“学号”。
数据库实验1-7
1《实验一 认识DBMS 》在SQL Server 2005中完成以下操作:(1) 建立SC 数据库,数据库命名:SC_姓名拼音+学号后三位,如SC_xiebing131;(2) 在其中建立Student 表、Course 表和SC 表,表结构如下,自己选择各属性的数据类型;学生关系Student(Sno ,Sname ,Ssex ,Sage ,Sdept)其中Sno 为主码,并且Sname 取值也唯一 课程关系Course(Cno ,Cname ,Cpno ,Ccredit)其中Cno 为主码,并且Cname 取值也唯一选修关系SC(Sno ,Cno ,Grade) 其中Sno 和Cno 不能为空,(Sno, Cno)为主码(3) 参照教材在各表中输入一定的记录,在student 表中输入一条自己的记录;(4) 进行表结构的修改和记录的修改、删除操作;(5) 验证教材P45基本关系具有的6个性质;(6) 分离数据库,保存数据库文件,以后上机要带上。
《实验二数据定义》实验内容:(1) 数据库的定义与删除(2)基本表的创建、修改及删除;(3) 索引的创建和删除;(4) 使用SQL 对数据进行完整性控制(实体完整性、参照完整性);(一)使用命令行方式建立SPJ 数据库(1)用SQL 语言建立SPJ 数据库,数据库命名:SPJ-姓名拼音+学号后三位,如SPJ-liyan112;(2)用SQL 语言在其中建立S 表、P 表、J 表和SPJ 表(要求进行完整性定义),表结构如下;厂家 S (SNO ,SNAME ,STA TUS ,CITY ),其中STA TUS (状态)为整型,其他均为字符型产品 P (PNO ,PNAME ,COLOR ,WEIGHT ),其中WEIGHT (重量)为浮点型,其他均为字符型工程 J (JNO ,JNAME ,CITY ),其中各属性均为字符型供应 SPJ (SNO ,PNO ,JNO ,QTY ),其中QTY (供应量)为整型,其他均为字符型建立数据表的语法格式CREA TE TABLE <表名>(<列名><数据类型>[<列级完整性约束条件> ] [,<列名><数据类型>[<列级完整性约束条件>]] …[,<表级完整性约束条件> ] );(3) 参照教材用SQL 语言分别在4个数据表中输入一定的记录;插入数据的语法格式:INSERTINTO <表名> [(<属性列1>[,<属性列2 >…)]V ALUES (<常量1> [,<常量2>] … )(4) 保存SQL 文件,文件名:SPJ-姓名拼音+学号后三位.sql ,如SPJ-xukai012.sql(二)使用命令行方式建立学生课程数据库(1) 用SQL 语言建立学生课程数据库,数据库命名:SC_学号后四位及姓名,如SC_3112liyan ;(2) 用SQL 语言在学生课程数据库中建立3个表,要求进行完整性定义;学生关系Student(Sno ,Sname ,Ssex ,Sage ,Sdept)其中Sno 不能为空,值是唯一的,并且Sname 取值也唯一,Sage 自定义约束“大于16” 课程关系Course(Cno ,Cname ,Cpno ,Ccredit)其中Cno 不能为空,值是唯一的,并且Cname 取值也唯一教师关系Teacher(Tno ,Tname ,Department ,Email ,Salary) 其中Tno 不能为空,值是唯一的选修关系SC(Sno ,Cno ,Grade) 其中Sno 和Cno 不能为空,(Sno, Cno)为主码,Grade 的数据类型为int(3) 修改数据表:✓ 将SC 表中Grade 的数据类型改为f loat ;✓ 在Student 表中增加一个属性Scome 记录学生的入学时间,其数据类型为DATETIME ;✓ 删除Student 表中新增加Scome 属性;✓ 删除表Teacher 表中的Email 属性;✓ 删除Student 表中对Sname 属性创建的Unique 约束。
数据库上机实验
附录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. 查询计算机系学生的最大年龄和最小年龄。
sql数据库系统原理上机实验(综合版)
《数据库原理》实验指导书《数据库原理》上机实验上机学时:8学时一、上机性质、目的及任务:通过上机实践,配合课堂教学内容加深对数据库的基本概念和基本技术的理解,掌握数据库系统设计的基本思想和基本步骤,熟悉关系数据库的标准语言SQL,并对典型的关系数据库管理系统有较深入的了解,使学生的动手能力有较大的提高。
二、面向专业:计算机类各专业三、实验指导书:见下页四、实验内容:实验一SQL数据定义 (3)实验二SQL简单查询 (6)实验三SQL 复杂查询 (7)实验四SQL 数据更新 (8)实验一SQL数据定义一、实验目的(1)认识几种常见的数据库管理系统,熟悉它们的使用界面;(2)熟练掌握建立数据库和表,向数据库输入数据、修改数据和删除数据的操作。
(3)熟悉SQL数据定义语言(DDL)二、实验内容(1)分别在Access 和SQL SERVER2005 中建立数据库并设计各表,输入多条实际数据,并实现数据的增、删、改操作。
(2)用SQL语言进行基本表结构的定义、修改、删除,索引的建立和删除三、实验步骤:分别在ACCESS数据库管理系统和SQL SERVR 2005环境下利用图形操作界面(非SQL语句)实现以下操作:1、创建用于学生管理的数据库,数据库名为XSGL,包含学生信息,课程信息和选课信息。
数据库XSGL包含下列3 个表:(l)student:学生基本信息。
(2)course:课程信息表。
(3)sc:学生选课表。
各表的结构分别如表1、表2和表3 所示。
表1 学生信息表:student列名数据类型长度完整性约束sno 字符(文本)型8 主键sname 字符(文本)型 4 不为空ssex 字符(文本)型 1sage 整数(数值)型sdept 字符型10表2 课程信息表:course列名数据类型长度完整性约束cno 字符(文本)型 2 主键cname 字符(文本)型30credit 整数(数值)型cpno 字符(文本)型 3表3 学生选课表:sc列名数据类型长度完整性约束sno 字符(文本)型8 主属性,外键cno 字符(文本)型 2 主属性,外键grade 整数(数值)型是提示:在不使用SQL语句创建表的情况下,可通过ACCESS中的关系(菜单—工具—关系)和SQL SERVER 2005中的数据库关系图(数据库节点展开—数据库关系图)实现外键的创建。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
实验七:数据完整性实验(SQL SERVER)实验目的:加深对数据完整性的理解。
实验内容:数据库的完整性设置。
实验步骤:1)可视化界面的操作方法:一、实体完整性1.将student表的“sno”字段设为主键:在表设计界面中,单击左边的行选定块,选定“sno”字段,单击工具按钮设置主键。
如图6-1所示:图6-11.将“sc”表的“sno”和“cno”设置为主键:在表设计界面中,单击并拖动左边的行选定块,选定sno和cno字段,单击工具按钮设置主键。
如图6-2所示:图6-2二、域完整性3. 将“ssex”字段设置为只能取“男”,“女”两值:在表设计界面,点击图4-3箭头所指按钮,出现属性(Property)对话框,选择新建(New)按钮,然后在约束表达式(Constraint expression)框中输入“ssex in ('男','女') ”。
如图6-3所示。
图6-3三、参照完整性4.利用数据库关系图来完成参照完整性见图6.4。
将要形成参照完整性的数据库加入将student表作为主键表,sc表作为外键表形成参照完整性,将鼠标参照完整性放在student 表的sno上,按左键不放,拖至sc表的sno放开修改下面中insert 和update 选项,对student 表和sc 表的sno 字段进行插入和修改操作,看有何区别同理,将course表作为主键表,sc表作为外键表形成参照完整性最后如下图2)命令方式操作方法:一、实体完整性1.将“student”表的“sno”字段设为主键:当“student”表已存在则执行:alter table student add constraint pk_sno primary key (sno)当“student”表不存在则执行:Create table student(sno CHAR(5) primary key ,sname CHAR(10),ssex CHAR(2),sage int,sdept CHAR(4))注:可用命令“drop table student”删除“student”表2. 添加一身份证号字段,设置其惟一性.(注: 操作前应删除表中的所有记录)Alter table student add id char(18) unique (id)3. 将“sc”表的“sno”和“cno”设置为主键:当“sc”表已存在则执行:alter table sc add constraint PK_SnoCno primary key (sno,cno) 当“sc”表不存在则执行:Create table sc(sno CHAR(5),cno CHAR(2),grade INT NULL,constraint PK_SnoCno primary key (sno,cno))二、域完整性4. 将“ssex”字段设置为只能取“男”,“女”两值:当“student”表已存在则执行:alter table student add constraint CK_Sex check (ssex in ('男' ,'女')) 当“student”表不存在则执行:Create table student(sno CHAR(5) primary key ,sname CHAR(10),ssex CHAR(2) check (ssex in ('男' ,'女')) ,sage int, sdept CHAR(4))5. 设置学号字段只能输入数字:alter table student add constraint CK_Sno_Format check (sno like'[0-9][0-9][0-9][0-9][0-9]')6. 设置身份证号的输入格式:alter table student add constraint CK_ID_Format check ((id like'[0-9][0-9][0-9][0-9][0-9][0-9][1-2][0-9][0-9][0-9][0-1][0-9][0-3][0-9][0-9][0-9][0-9]_') OR (id like '[0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-1][0-9][0-3][0-9][0-9][0-9][0-9]'))7. 设置18位身份证号的第7位到第10位为合法的年份(1900-2050)alter table student add constraint CK_ID_Format2 check ( not len(id)=18 or( (convert(smallint,substring(id,7,4) )>=1900) and(convert(smallint,substring(id,7,4) )<=2050)) )三、参照完整性9. 设置男生的年龄必须大于22, 女生的年龄必须大于20.Alter table student add constraint CK_age check (sex='男' and sage>=22 or sex='女' and sage>=20 )10. 将“student”表和“sc”表中的“sno”字段设为参照:当“sc”表已存在则执行:alter table sc add constraint FP_sno foreign key (sno) references student(sno )当“sc”表不存在则执行:Create table sc(sno CHAR(5) constraint FP_snoforeign key references student(sno),cno CHAR(2),grade I NT NULL,constraint PK_SnoCno primary key (sno,cno) )四、完整性验证1.实体完整性:在“student”表数据浏览可视化界面中输入学号相同的两条记录将会出现错误如下图所示:图6-5或者在命令窗口输入下面两条命令也会出现错误提示:insert into student values('95001','张三','男',20,'CS') insert into student values('95001','李四','女',18,'CS')图6-6 下面的语句用来验证“sc”表中的实体完整性:insert into sc values('95002', '10',65)insert into sc values('95002', '10',90)图6-72. 域完整性:使用下面的语句验证“ssex”字段的域完整性:insert into student values('95009','张匀','大',20,'CS')3.参照完整性:使用下面的语句“验证”sc表中的“sno”字段的域完整性(假设student表中没有学号为“95998”的学生记录):insert into sc values('98998', '10',98)思考:1.建立课程的实体完整性, 和课程号cno的参照完整性;2.建立年龄的域完整性, 约束条件为“年龄在15到30岁之间”3*. 在学生表中添加“出生日期”和“身份证号”字段,设置一完整性规则,确保身份证号中的关于出生日期的数字与“出生日期”字段的值相匹配。
alter table student add constraint CK_ID_Forma实验八数据库备份和恢复实验实验目的:了解数据备份和恢复机制,掌握其方法。
实验内容:1、用企业管理器创建一个备份设备,并利用该备份设备对数据库执行备份。
2、为数据库设置一个备份计划,要求每当CPU空闲时进行数据库备份,并且要求每月1号进行数据库备份。
3、在企业管理器中恢复数据库。
实验步骤:一)数据备份1)打开企业管理器,在控制台根目录中依次点开Microsoft SQL Server-->SQL Server组-->双击打开你的服务器2、然后点上面菜单中的工具-->选择数据库维护计划器(若SQL server代理未启动,启动)3)在左边的工具箱中(没有的话,按Ctrl+Alt+X),将“备份数据库任务”拖到中间的黄色区域。
4)双击拖出来的这个任务,会出现设计属性的窗口,在数据库中,选择你要备份的数据库,然后设置备份到那里,并且设置备份的文件名,设计好后,单击“确定”,你也可以单击“T -SQL”,看看 sql 大致会用什么样的语句来处理你的需求。
4、下一步选择要进行自动备份的数据-->下一步更新数据优化信息,这里一般不用做选择-->下一步检查数据完整性,也一般不选择5单击“计划”后面的“…”按钮,设置执行的时间计划。
时间设定在当前时间之后6 修改日志记录存放位置二)数据恢复1)删除要恢复的数据库(如:XSGL)2)如图Microsoft SQL Server-->SQL Server组-->数据库,右键选择:“还原数据库”3)选择“原设备”并添加4)选择已备份的数据库5)按下图填好并确定。