数据库实验指导

2019-08-26 18:18

实验1:安装及配置SQL Server 2000

1、实验目的

(1)熟悉SQL Server 2000的安装步骤,了解SQL Server 2000的主要组件。 (2)掌握启动和停止SQL Server 服务的方法 (3)掌握注册SQL Server 服务器的方法 (4)掌握创建服务器组的方法 2、实验步骤

(1)检查软硬件配置是否达到SQL Server 2000 的安装要求 (2)选择安装SQL Server 2000的方式 (3)安装前要做的准备工作 (4)安装SQL Server 2000

(5)练习用不同的方法启动SQL Server服务 (6)新建、删除服务器组 (7)注册服务器

(8)断开与恢复同服务器的连接 (9)删除SQL Server 注册 (10)打开查询分析器的方法

实验2:用T-SQL和企业管理器创建表

1、实验目的 (1)熟悉各种数据类型

(2)能够用T-SQL语句和企业管理器正确创建表

(3)了解6种常用的数据完整性约束,学会用企业管理器设置常用的数据完整性约束 2、实验步骤

(1)使用T-SQL语句,创建SM数据库中的学生表Student。 1打开查询分析器,输入如下SQL语句。 ○

CREATE TABLE Student ( Sid INT IDENTITY(1,1),

SNo CHAR(5) PRIMARY KEY, CLno CHAR(6),

SName VARCHAR(8)NOT NULL,

SSex CHAR(2) CHECK(SSex IN(‘男’,’女’)), SBir DATETIME, SAge INT )

2按F5键或单击工具栏上的?图标,可以看到建表语句被成功执行 ○

(2)创建SM数据库中的课程表Course。

打开查询分析器,输入以下SQL语句 CREATE TABLE Course

(CNo CHAR(5)CONSTRAINT pk_CNO PRIMARY KEY, CName VARCHA(50)UNIQUE,

CCredits NUMERIC(2,0)DEFAULT(4), CTno CHAR(2),

CInfo VARCHAR(50),

CPno CHAR(5),

CTtime NUMERIC(3,0), CTerm MUMERIC(1,0))

(3)创建SM数据库中的选课表SC。

打开查询分析器,输入以下SQL语句。 CREATE TABLE SC

(SNo CHAR(5)FOREIGN KEY(SNo)REFERENCES Student(SNo)ON DELETE CASCADE,

CNo CHAR(5)FOREIGN KEY(CNo)REFERENCES Course(CNo), Score NUMERIC(3,1),

PRIMARY KEY(SNo,CNo))

(4) 输入以下SQL语句,查看表Student的定义。 USE SM

EXEC sp_help Student

(5) 输入以下SQL语句,查看表Student与其他表之间的依赖关系

USE SM

EXEC sp_depends Student

(6) 输入以下SQL语句,查看表Student上的约束

USE SM

EXEC sp_helpconstraint Student

(7)利用企业管理器提供的图形界面来创建“进销存”数据库中的客户信息表c,货物表g和订单表o,表结构如下。

c(customerID int,name varchar(10),address varchar(50),city varchar(20),tel varchar(20),company varchar(50),birthday datatime,type tinyint)

g(name varchar(20),storage int, supplie varchar(50),status tinyint,price money) o(ordered int,goodsname varchar(20),customerID int , quantity int,ordersum money,orderdate datetime)

(8)在表o的goodsname列上创建外键约束 (9)在表o的quantity列上创建检查约束 (10)使用企业管理器,把SM数据库中 选课表SC的主码设置为SNo和CNo。 (11)查看表间的依赖关系 (12)向表中输入数据。 实验3:表的维护

1、实验目的

(1)熟练掌握用企业管理器修改表 (2)能够用T-SQL语句对表结构进行修改 (3)熟练掌握用企业管理器编辑表中的数据

(4)能够运用T-SQL语句对表中的数据进行插入、修改和删除操作 2、实验步骤

(1)使用企业管理器为表Student(结构详见实验2中Student表)增加一列

(2)用SQL语句修改表Course的列属性,将CName的长度改为40,且不允许空,相关SQL语句如下:

USE SM

ALTER TABLE Course ALTER COLUMN CName VARCHAR(40)NOT NULL

(3)用SQL语句向表Student中增加列Email,且要求输入的电子邮件地址必须包括“@”字符,相关SQL语句如下:

USE SM

ALTER TABLE Student ADD Email VARCHAR(40) NULL CONSTRAINT ck_ea CHECK(Email like’%@%’)

(4) 用SQL语句删除表Student中的列Address, 相关SQL语句如下: USE SM

ALTER TABLE Student DROP COLUMN Address

(5) 用SQL语句给表Student添加主键约束,相关SQL语句如下: USE SM

ALTER TABLE Student ADD CONSTRAINT pk_name PRIMARY KEY (SName) (6)删除SName 列上的主键约束,相关SQL语句如下: USE SM

ALTER TABLE Student DROP CONSTRAINT pk_name

(7)使用WITH NOCHECK子句,对表Student的Sage列添加约束,使学生的年龄为18~25岁,相关SQL语句如下:

USE SM ALTER

TABLE

Student

WITH

NOCHECK

ADD

CONSTRAINT

ck_age

CHECK(Sage>=18 AND Sage<=25)

(8)使约束无效或重新有效,使步骤(3)创建的约束无效,相关SQL语句如下: USE SM

ALTER TABLE Student NOCHECK CONSTRAINT ck_ea 使这一约束重新有效,相关SQL语句如下: USE SM

ALTER TABLE Student CHECK CONSTRAINT ck_ea

(9)使用企业管理器编辑表Student中的数据,插入、删除、修改记录 (10)用SQL语句向表中插入数据

1将学号为“06001”、姓名为“王立”、性别为“男”的学生记录插入表Student○

中,相关SQL语句如下:

INSERT INTO Student(SNo,SName,SSex)VALUES(‘06001’,’王立’,’男’)

2将一条选课记录插入表SC中 ○

INSERT INTO SC VALUES(‘06001’,’00001’,null)

3在表Student中插入一条学生记录,省略INSERT INTO后的列名,查看插入结果。 ○

INSERT INTO Student VALUES(‘060001’,’要强’,’男’,’1986-12-12’)

4新建一个表ss,且结构与表Student的结构完全相同,把表Student中学号为“06001”○

的记录插入到表ss中,再把表Student中所有男生的记录插入到表ss中,查看执行结果。

INSERT INTO ss SELECT*FROM Student WHERE SNo=’06001’ INSERT INTO ss SELECT*FROM Student WHERE SSex=’男’ (11)用SQL语句修改表中的记录

1将学生06002的年龄改为20岁 ○

在查询分析器中输入以下SQL语句。

UPDATE Student SET SAge=20 WHERE SNo=’06002’ 2将所有男生的年龄增加1岁 ○

在查询分析器中输入以下SQL语句。

UPDATE Student SET SAge=Sage+1 WHERE SSex=’男’

3将所有选修了数字逻辑课程的学生成绩增加5分 ○

在查询分析器中输入以下SQL语句。

UPDATE SC SET Score=Score+5 WHERE CNo=(SELECT CNo FROM Course WHERE CName=’数字逻辑’)

(12)用SQL语句删除表中的记录

1删除学号为06001的记录 ○

在查询分析器中输入以下SQL语句。

DELETE FROM Student WHERE SNo=’06001’

2删除所有学生的选课记录 ○

DELETE FROM SC

实验4:常规数据查询

1、实验目的

(1)掌握SELECT子句以及WHERE子句的使用方法 (2)学会应用ORDER BY子句 (3)掌握5种基本的聚合函数 (4)学会分组统计和二次查询 2、实验步骤

启动企业管理器,在SM数据库中新建表Teacher,包括如下数据项。 Teacher(TNo,TName,age,sal,mgr,DNo)

其中,TNo为教职工编号,TName为教职工姓名,age为年龄,sal为月薪,mgr为教职工的上一级领导的工号,DNo为部门号

(1)SELECT子句的应用

1查看所有教职工的信息 ○

SELECT * FROM Teacher 2查看所有教职工的职工号、姓名 ○

SELECT TNo,TName FROM Teacher

3查看所有职工的职工号、姓名,并且将输出结果中的列名显示为“教职工号”、“姓名” ○

SELECT TNo 教职工号,TName 姓名FROM Teacher

4查看所有职工的姓名和年薪,并且将输出结果中的列名显示为“姓名”、“年薪”。 ○

SELECT TName 姓名,sal*12 年薪 FROM Teacher

5查看所有职工的姓名和年薪,并将输出结果中的列名显示为“姓名”、“年薪”、“币种单○

位”,其中币种单位的值为“元”。

SELECT TName 姓名,sal*12 年薪,’元’ 币种单位 FROM Teacher

6运行以下两组SQL语句,看结果有何区别。 ○

SELECT SNo FROM SC

SELECT DISTINCT SNo FROM SC

SELECT SNo,Score FROM SC

SELECT DISTINCT SNo,Score FROM SC

(2)WHERE子句的应用

1查询所有0002部门职工的信息 ○

SELECT * FROM Teacher WHERE DNo=’0002’

2查询1984年和1985年出生的女生的信息 ○

SELECT SName,SBir FROM Student

WHERE SSex=’女’AND SBir BETWEEN ‘1984-01-01’AND ‘1985-12-31’ 3查询0001部门、0002部门或0003部门的职工的信息 ○

SELECT *

FROM Teacher

WHERE DNo IN (‘0001’,’0002’,’0003’) 4查询学号为03004的同学正在学习的课程 ○

SELECT CNo

FROM SC

WHERE SNo=’03004’AND Score IS NULL 5查询姓王的同学的信息 ○

SELECT *

FROM Student

WHERE SName LIKE ‘王%’

(3)ORDER BY 子句的应用

1查询所有职工的年龄,并按年龄从小到大的顺序排列 ○

SELECT TNo,age FROM Teacher ORDER BY age

2查询学生某门课(如00001)的成绩,并按成绩由高到低的顺序输出 ○


数据库实验指导.doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:《关于进一步规范非银行金融机构中长期贷款还款方式的通知》(非

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: