SQLSERVER数据库管理系统软件的使用.docx

上传人:b****6 文档编号:8853472 上传时间:2023-02-02 格式:DOCX 页数:19 大小:353.96KB
下载 相关 举报
SQLSERVER数据库管理系统软件的使用.docx_第1页
第1页 / 共19页
SQLSERVER数据库管理系统软件的使用.docx_第2页
第2页 / 共19页
SQLSERVER数据库管理系统软件的使用.docx_第3页
第3页 / 共19页
SQLSERVER数据库管理系统软件的使用.docx_第4页
第4页 / 共19页
SQLSERVER数据库管理系统软件的使用.docx_第5页
第5页 / 共19页
点击查看更多>>
下载资源
资源描述

SQLSERVER数据库管理系统软件的使用.docx

《SQLSERVER数据库管理系统软件的使用.docx》由会员分享,可在线阅读,更多相关《SQLSERVER数据库管理系统软件的使用.docx(19页珍藏版)》请在冰豆网上搜索。

SQLSERVER数据库管理系统软件的使用.docx

SQLSERVER数据库管理系统软件的使用

数据库管理系统软件的使用

一、实验目的

(1)认识几种常见的数据库管理系统,熟悉它们的使用界面;

(2)熟练掌握建立数据库和表,向数据库输入数据、修改数据和删除数据的操作。

二、实验内容

分别在Access和SQLSERVER2000中建立数据库并设计各表,输入多条实际数据,并实现数据的增、删、改操作。

三、实验步骤:

创建用于学生管理数据库,数据库名为XSGL,包含学生的基本信息,课程信息和选课信息。

数据库XSGL包含下列3个表:

(l)student:

学生基本信息。

(2)course:

课程信息表。

(3)sc:

学生选课表。

各表的结构分别如表1、表2和表3所示。

表1学生信息表:

student

列名

数据类型

长度

是否允许为空值

sno

字符(文本)型

10

sname

字符(文本)型

10

ssex

字符(文本)型

2

sage

整数(数值)型

sdept

字符型

4

表2课程信息表:

course

列名

数据类型

长度

是否允许为空值

cno

字符(文本)型

3

cname

字符(文本)型

30

credit

整数(数值)型

pcno

字符(文本)型

3

表3学生选课表:

sc

列名

数据类型

长度

是否允许为空值

sno

字符(文本)型

10

cno

字符(文本)型

30

grade

整数(数值)型

1.用可视化界面在Access中建立数据库和表:

(a)在Access中创建xsgl.mdb数据库,使用表设计视图创建如表1、表2、表3所示结构的3个表。

提示:

(1)启动Access2000或Access2003,选择文件->新建->空数据库,输入数据库文件名xsgl.mdb,进入

(2);

(2)启动如图1的设计界面后,选择表对象和使用使用设计器创建表,选择新建,进入(3);

(3)生成如图2界面,选择设计视图,点击确定按钮,进入(4);

(4)在图3表设计界面下,分别创建student表,course表和sc表的结构;

(5)输入表中的记录:

分别在student表、course表和sc表中输入如下表中的记录:

在数据库视图下,选择表对象中的相应表选择打开,在浏览视图下输入如下表记录:

sno

sname

ssex

sage

sdept

95001

李勇

20

CS

95002

刘晨

19

IS

95003

王敏

18

MA

95004

张立

19

IS

95005

刘云

18

CS

cno

cname

credit

pcno

1

数据库

4

5

2

数学

6

3

信息系统

3

1

4

操作系统

4

6

5

数据结构

4

7

6

数据处理

3

7

PASCAL语言

4

6

sno

cno

grade

95001

1

92

95001

2

85

95001

3

88

95002

2

90

95002

3

80

95003

2

85

95004

1

58

95004

2

85

(b)对表中的记录进行浏览、修改、删除操作。

2.在SQLSERVER中用企业管理器新建数据库和表:

(1)建立xsgl数据库:

启动SQLServer2000企业管理器,界面如下:

图4SQLServer2000企业管理器界面

选择树形菜单数据库,点击鼠标右键,出现如下弹出式菜单,选择新建数据库

在图中,按图分别设置数据库xsgl的属性,点击确定按钮,完成了数据库的创建。

图5数据库名称属性设置

图6数据库数据文件属性设置

图7数据库日志文件属性设置

选择确定按钮,则创建xsgl数据库。

(2)建立student、course、sc表:

选择xsgl数据库树形菜单,选择表,在图8表逻辑对象中点击鼠标的右键,在弹出式菜单中选择新建,启动表设计器。

图8表逻辑对象界面

选择新建,启动如图9的表设计器,建立表结构,保存为student。

图9student的表结构

分别按表2、3建立course表和sc表。

(3)在表中添加记录:

选择student表,在快捷菜单下选择打开表->返回所有行,进入图11,输入学生表中的记录。

图10

图11student表记录录入

依次按相同方法建立course表和sc表,并输入其中的记录。

(4)修改表中的数据:

(5)删除表中的记录

思考:

1.Access数据库主要有哪些对象组成?

2.SQLSERVER2000数据库主要由哪些逻辑对象组成?

物理数据库文件包括哪些文件?

实验二:

数据库的建立和维护

实验目的

熟练掌握建立数据库和表,向数据库输入数据、修改数据和删除数据的操作。

实验内容

建立数据库并设计各表,输入多条实际数据,并实现数据的增、删、改操作。

实验步骤:

创建用于学生管理数据库,数据库名为XSGL,包含学生的基本信息,课程信息和选课信息。

数据库XSGL包含下列3个表:

(l)student:

学生基本信息。

(2)course:

课程信息表。

(3)sc:

学生选课表。

各表的结构分别如表1、表2和表3所示。

表1学生信息表:

student

列名

数据类型

长度

是否允许为空值

sno

字符型

10

sname

字符型

10

ssex

字符型

2

sage

整数型

sdept

字符型

4

表2课程信息表:

course

列名

数据类型

长度

是否允许为空值

cno

字符型

3

cname

字符型

30

credit

整数型

pcno

字符型

3

表3学生选课表:

sc

列名

数据类型

长度

是否允许为空值

sno

字符型

10

cno

字符型

30

grade

整数型

一.数据库的建立:

2.用可视化界面建立:

(a)在SQLSERVER中用企业管理器-新建数据库;

3.命令方式建立:

(a)在SQLSERVER中,在查询分析器中使用T-SQL语句:

CREATEDATABASEXSGL

ON(NAME='XSGL_DATA',

FILENAME='E:

\XSGL.MDF',

SIZE=10MB,

MAXSIZE=50MB,

FILEGROWTH=5%)

LOGON

(NAME='XSGL_Log',

FILENAME='e:

\XSGL_Log.ldf',

SIZE=2MB,

MAXSIZE=5MB,

FILEGROWTH=1MB)

二.表的建立:

1.用可视化界面建立:

在SQLSERVER中用企业管理器—数据库—XSCJ—表—右键—新建表;

2.命令方式建立:

在SQLSERVER中查询分析器的编辑窗口中用下列SQL语句:

useXSGL

Createtablestudent(snoCHAR(5),snameCHAR(10),ssexCHAR

(2),sageint,sdeptCHAR(4))

go

Createtablecourse(cnoCHAR

(2),cnameCHAR(30),creditINT,pcnoCHAR

(2)NULL)

go

Createtablesc(snoCHAR(5),cnoCHAR

(2),gradeINTNULL)

go

三.表数据的添加:

1.用可视化方法:

I:

在SQLSERVER中用企业管理器—数据库—XSCJ—表-表名—右键-打开表-返回所有行;

输入下列数据:

sno

sname

ssex

sage

sdept

95001

李勇

20

CS

95002

刘晨

19

IS

95003

王敏

18

MA

95004

张立

19

IS

95005

刘云

18

CS

cno

cname

credit

pcno

1

数据库

4

5

2

数学

6

3

信息系统

3

1

4

操作系统

4

6

5

数据结构

4

7

6

数据处理

3

7

PASCAL语言

4

6

sno

cno

grade

95001

1

92

95001

2

85

95001

3

88

95002

2

90

95002

3

80

95003

2

85

95004

1

58

95004

2

85

2.在SQLSERVER查询分析器的编辑窗口中使用下列SQL语句插入数据:

insertintostudent(sno,sname,ssex,sage,sdept)values('95001','李勇','男',20,'CS')

insertintostudent(sno,sname,ssex,sage,sdept)values('95002','刘晨','女',19,'IS')

insertintostudent(sno,sname,ssex,sage,sdept)values('95003','王敏','女',18,'MA')

insertintostudent(sno,sname,ssex,sage,sdept)values('95004','张立','男',19,'IS')

insertintostudent(sno,sname,ssex,sage,sdept)values('95005','刘云','女',18,'CS')

insertintocourse(cno,cname,credit,pcno)values('1','数据库',4,'5')

insertintocourse(cno,cname,credit,pcno)values('2','数学',6,null)

insertintocourse(cno,cname,credit,pcno)values('3','信息系统',3,'1')

insertintocourse(cno,cname,credit,pcno)values('4','操作系统',4,'6')

insertintocourse(cno,cname,credit,pcno)values('5','数据结构',4,'7')

insertintocourse(cno,cname,credit,pcno)values('6','数据处理',3,null)

insertintocourse(cno,cname,credit,pcno)values('7','PASCAL语言',4,'6')

insertintosc(sno,cno,grade)values('95001','1',92)

insertintosc(sno,cno,grade)values('95001','2',85)

insertintosc(sno,cno,grade)values('95001','3',88)

insertintosc(sno,cno,grade)values('95002','2',90)

insertintosc(sno,cno,grade)values('95002','3',80)

insertintosc(sno,cno,grade)values('95003','2',85)

insertintosc(sno,cno,grade)values('95004','1',58)

insertintosc(sno,cno,grade)values('95004','2',85)

四.表数据的修改:

1.用可视化方法:

在SQLSERVER中用企业管理器—数据库—XSCJ—表-表名—右键-打开表-返回所有行;

在表格中将相应的数据修改即可。

2.命令方法:

将所有学生的年龄增加一岁:

updatestudentsetsage=sage+1

将4号课程的学分改为4:

updatecoursesetcredit=4wherecno=4

设置7号课程没有先行课:

updatecoursesetpcno=nullwherecno=7

将95001号学生的1号课程的成绩增加3分:

updatescsetgrade=grade+3wheresno=’95001’andcno=’1’

五.表数据的删除:

1.用可视化方法:

在SQLSERVER中用企业管理器—数据库—XSCJ—表-表名—右键-打开表-返回所有行;

单击左边的行标记,选定某一行,或单击后拖动选择相邻的多行,再右击鼠标选择弹出式菜单中的删除。

2.命令方法:

删除学号为95005的学生的记录:

deletefromstudentwheresno=’95005’

删除所有的课程记录:

deletefromcourse

删除成绩为不及格(少于60分)的学生的选课记录:

deletefromscwheregrade<60

思考:

比较用可视化界面与命令方式在数据的插入、修改、删除方面的优缺点。

实验三:

数据库的简单查询和连接查询

实验目的:

掌握简单表的数据查询、数据排序和数据联结查询的操作方法。

实验内容:

简单查询操作和连接查询操作。

实验步骤:

一.单表查询:

1.查询全体学生的学号和姓名:

selectsno,snamefromstudent

2.查询全体学生的所有信息:

select*fromstudent

或者selectsno,sname,ssex,sage,sdeptfromstudent

3.查询全体学生的姓名,出生年份,和所在系,并用小写字母表示所有系名:

selectsname,'出生年份为:

',year(getdate())-sage,lower(sdept)fromstudent

4.给上例的结果集指定列名:

selectsname,'出生年份为:

'出生,year(getdate())-sage年份,lower(sdept)系名fromstudent

5.查询选修了课程的学生的学号:

selectdistinctsnofromsc

比较:

selectsnofromsc

6.查询年龄在20岁以下的学生的姓名及其年龄:

selectsname,sagefromstudentwheresage<20

7.查询考试成绩有不及格的学生的学号:

selectdistinctsnofromscwheregrade<60

比较:

selectsnofromscwheregrade<60

8.查询年龄在20-30岁直接的学生的姓名,姓名,所在系:

selectsname,ssex,sdeptfromstudentwheresagebetween20and30

9.查询IS,CS,MA系的所有学生的姓名和性别:

selectsname,ssexfromstudentwheresdeptin('IS','MA','CS')

10.查找所有姓’李’的学生的姓名,学号和性别:

selectsname,sno,ssexfromstudentwheresnamelike'李%'

比较:

将学生表中的’95001’号学生的姓名’李勇’改为’李勇勇’,再执行:

selectsname,sno,ssexfromstudentwheresnamelike'李_'

11.查询没有先行课的课程的课程号cno和课程名cname:

selectcno,cnamefromcoursewherepcnoisnull

二.查询结果排序

12.查询选修了3号课程的学生的学号和成绩,并按分数降序排列:

selectsno,gradefromscwherecno='3'orderbygradeDESC

23.查询全体学生的情况,查询结果按所在系号升序排列,同一系中的学生按年龄降序排列:

select*fromstudentorderbysdeptASC,sageDESC

三.连接查询:

14.查询每个学生及其选修课程的情况:

selectstudent.*,sc.*fromstudent,scwherestudent.sno=sc.sno

比较:

笛卡尔集:

selectstudent.*,sc.*fromstudent,sc

自然连接:

selectstudent.sno,sname,ssex,sdept,cno,gradefromstudent,scwherestudent.sno=sc.sno

15.查询每一门课程的间接先行课(只求两层即先行课的先行课):

selectFo,Second.pcno间接先行课fromcourseFirst,courseSecondwhereFirst.pcno=So

比较:

selectFo,Second.pcno间接先行课fromcourseFirst,courseSecondwhereFirst.pcno=SoandSecond.pcnoisnotnull

16.列出所有学生的基本情况和选课情况,若没有选课,则只列出基本情况信息:

SQLServer中:

selects.sno,sname,ssex,sdept,cno,gradefromstudents,scscwheres.sno*=sc.sno

17.查询每个学生的学号,姓名,选修的课程名和成绩:

selectS.sno,sname,cname,gradefromstudentS,courseC,scSCwhereS.sno=SC.snoandC.cno=SC.cno

思考:

如何求出不及格学生的学号,姓名,不及格的课程名以及成绩。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 高等教育 > 法学

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1