最新文章专题视频专题问答1问答10问答100问答1000问答2000关键字专题1关键字专题50关键字专题500关键字专题1500TAG最新视频文章推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37视频文章20视频文章30视频文章40视频文章50视频文章60 视频文章70视频文章80视频文章90视频文章100视频文章120视频文章140 视频2关键字专题关键字专题tag2tag3文章专题文章专题2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章专题3
当前位置: 首页 - 正文

数据库实验指导

来源:动视网 责编:小OO 时间:2025-10-06 09:47:54
文档

数据库实验指导

实验1:安装及配置SQLServer20001、实验目的(1)熟悉SQLServer2000的安装步骤,了解SQLServer2000的主要组件。(2)掌握启动和停止SQLServer服务的方法(3)掌握注册SQLServer服务器的方法(4)掌握创建服务器组的方法2、实验步骤(1)检查软硬件配置是否达到SQLServer2000的安装要求(2)选择安装SQLServer2000的方式(3)安装前要做的准备工作(4)安装SQLServer2000(5)练习用不同的方法启动SQLServer服务
推荐度:
导读实验1:安装及配置SQLServer20001、实验目的(1)熟悉SQLServer2000的安装步骤,了解SQLServer2000的主要组件。(2)掌握启动和停止SQLServer服务的方法(3)掌握注册SQLServer服务器的方法(4)掌握创建服务器组的方法2、实验步骤(1)检查软硬件配置是否达到SQLServer2000的安装要求(2)选择安装SQLServer2000的方式(3)安装前要做的准备工作(4)安装SQLServer2000(5)练习用不同的方法启动SQLServer服务
实验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。

打开查询分析器,输入如下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    )

按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语句向表中插入数据

将学号为“06001”、姓名为“王立”、性别为“男”的学生记录插入表Student中,相关SQL语句如下:

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

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

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

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

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

新建一个表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语句修改表中的记录

将学生06002的年龄改为20岁

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

UPDATE Student SET SAge=20 WHERE SNo=’06002’

将所有男生的年龄增加1岁

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

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

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

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

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

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

删除学号为06001的记录

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

DELETE FROM Student WHERE SNo=’06001’

删除所有学生的选课记录

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子句的应用

查看所有教职工的信息

SELECT * FROM Teacher

查看所有教职工的职工号、姓名

SELECT TNo,TName FROM Teacher

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

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

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

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

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

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

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

SELECT SNo FROM SC

SELECT DISTINCT SNo FROM SC

SELECT SNo,Score FROM SC

SELECT DISTINCT SNo,Score FROM SC

(2)WHERE子句的应用

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

SELECT * FROM Teacher WHERE DNo=’0002’

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

SELECT SName,SBir FROM Student

WHERE SSex=’女’AND SBir BETWEEN ‘1984-01-01’AND ‘1985-12-31’

查询0001部门、0002部门或0003部门的职工的信息

SELECT * 

FROM Teacher

WHERE DNo IN (‘0001’,’0002’,’0003’)

查询学号为03004的同学正在学习的课程

SELECT CNo

FROM SC

WHERE SNo=’03004’AND Score IS NULL

查询姓王的同学的信息

SELECT *

FROM Student

WHERE SName LIKE ‘王%’

(3)ORDER BY 子句的应用

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

SELECT TNo,age

FROM Teacher

ORDER BY age

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

SELECT SNo,Score

FROM SC

WHERE CNo=’00001’AND Score IS NOT NULL

ORDER BY Score DESC

查询职工的年薪,并按年薪的升序排列

SELECT TName,sal*12

FROM Teacher

ORDER BY 2

查询所有职工信息,按部门号的降序排列,在部门相同的情况下,按年龄的升序排列

SELECT *

FROM Teacher

ORDER BY DNo,DESC,age

(4)聚合函数的应用

统计职工的工资总额

SELECT SUM(sal) FROM Teacher

统计职工的工资总额,并显示每个职工的工资情况

SELECT TNo,sal

FROM Teacher

ORDER BY TNo COMPUTE SUM(sal)

统计职工的工资总额,显示每个职工的工资情况及各个部门的工资总额

SELECT TNo,sal

FROM Teacher

ORDER BY DNo,TNo COMPUTE SUM(sal) BY DNo

求职工的最高工资、最低工资和平均工资

SELECT MAX(sal),MIN(sal),AVG(sal)

FROM Teacher

求女学生的学生总数

SELECT COUNT(*)

FROM Student

WHERE SSex=’女’

查询有多少名学生的物理课成绩不及格

SELECT COUNT(SNo)

FROM SC,Course

WHERE CName=’物理’AND Course.CNO=SC.CNo AND Score<60

(5)聚合操作与分组统计的应用

求每个班的学生数,希望得到下面的输出

CLno               COUNT(*)

060001                 40

060002                 35

…                     …

SELECT CLno,COUNT(*)

FROM Student

GROUP BY CLno

查询每个学生已获得的学分(成绩及格即取得相应课程的学分)

SELECT SNo,SUM(CCredits)

FROM SC,Course

WHERE Score>60 AND SC.CNo=Course.CNo

GROUP BY SNo

使用HAVING子句,查询学分大于30的学生,输出学生的学号和学分

SELECT SNo,SUM(CCredits)

FROM SC,Course

WHERE Score>60 AND SC.CNo=Course.CNo

GROUP BY SNo

HAVING SUM(CCredits)>30

文档

数据库实验指导

实验1:安装及配置SQLServer20001、实验目的(1)熟悉SQLServer2000的安装步骤,了解SQLServer2000的主要组件。(2)掌握启动和停止SQLServer服务的方法(3)掌握注册SQLServer服务器的方法(4)掌握创建服务器组的方法2、实验步骤(1)检查软硬件配置是否达到SQLServer2000的安装要求(2)选择安装SQLServer2000的方式(3)安装前要做的准备工作(4)安装SQLServer2000(5)练习用不同的方法启动SQLServer服务
推荐度:
  • 热门焦点

最新推荐

猜你喜欢

热门推荐

专题
Top