数据库实验答案Word格式.docx

上传人:b****5 文档编号:20264535 上传时间:2023-01-21 格式:DOCX 页数:41 大小:45.56KB
下载 相关 举报
数据库实验答案Word格式.docx_第1页
第1页 / 共41页
数据库实验答案Word格式.docx_第2页
第2页 / 共41页
数据库实验答案Word格式.docx_第3页
第3页 / 共41页
数据库实验答案Word格式.docx_第4页
第4页 / 共41页
数据库实验答案Word格式.docx_第5页
第5页 / 共41页
点击查看更多>>
下载资源
资源描述

数据库实验答案Word格式.docx

《数据库实验答案Word格式.docx》由会员分享,可在线阅读,更多相关《数据库实验答案Word格式.docx(41页珍藏版)》请在冰豆网上搜索。

数据库实验答案Word格式.docx

硬盘空间

需要约250MB的程序空间,以及预留200M的数据空间

显示器

需要设置成至少800x600模式,才能使用其图形分析工具

安装注意事项如下:

(1)关闭所有可能与SQLSERVER2000系统有关的服务和应用程序。

这包括所有利用到ODBC的应用程序,以及WINDOWSNT自带的IIS。

(2)如果正在WINDOWSNT的事件查看器,先关闭该查看器。

(3)如果运行管理或修改注册表的任何程序,如REGEDIT32,请先关闭。

(4)如果是在WINDOWSNT上安装SQLSERVER2000,并且希望以后能运行在服务器之间相互通讯的程序和服务,那么事先创建一个用于分配给MSSQLSERVER服务器、SQLSERVERAGENT服务、和MS-DTC服务的域用户账户(DOMAINUSERACCOUNT),可以为每项服务分别创建一个账号,也可以为创建一个统一的账号。

(5)在安装SQLSERVER2000以前先以拥有管理员权限的账号登录操作系统。

8.2数据库的创建与管理

1.SQLSERVER数据库由哪两类文件组成?

这些文件的扩展名分别是什么?

每个SQLServer2000数据库(无论是系统数据库还是用户数据库)在物理上都由至少一个数据文件和至少一个日志文件组成。

出于分配和管理目的,可以将数据库文件分成不同的文件组。

主要数据文件的默认文件扩展名是.mdf。

日志文件的默认文件扩展名是.1df。

2.数据文件和日志文件的作用是什么?

数据文件:

分为主要数据文件和次要数据文件两种形式。

每个数据库都有且只有一个主要数据文件。

主要数据文件的默认文件扩展名是.mdf。

它将数据存储在表和索引中,包含数据库的启动信息,还包含一些系统表,这些表记载数据库对象及其他文件的位置信息。

次要数据文件包含除主要数据文件外的所有数据文件。

有些数据库可能没有次要数据文件,而有些数据库则有多个次要数据文件。

次要数据文件的默认文件扩展名是.ndf。

日志文件:

SQLServer具有事务功能,以保证数据库操作的一致性和完整性。

所谓事务就是一个单元的工作,该单元的工作要么全部完成,要么全部不完成。

日志文件用来记录数据库中已发生的所有修改和执行每次修改的事务。

SQLServer是遵守先写日志再执行数据库修改的数据库系统,因此如果出现数据库系统崩溃,数据库管理员(DBA)可以通过日志文件完成数据库的修复与重建。

每个数据库必须至少有一个日志文件,但可以不止一个。

日志文件的默认文件扩展名是.1df。

建立数据库时,SQI。

Server会自动建立数据库的日志文件。

日志文件记录一切数据库的操作。

包括执行的SQL语句。

8.3数据表的创建

1.createdatabase学生管理数据库/*创建学生管理数据库*/

use学生管理数据库/*打开学生管理数据库*/

2.createtableCourse(/*创建Course表*/

Cnochar(10)primarykey,

Cnamechar(20)notnull,

Ccreditintcheck(Ccredit>

0),

Semsterintcheck(Semster>

Periodintcheck(Period>

0)

3.createtableStudent(/*创建Student表*/

Snochar(7)primarykey,

Snamechar(10)notnull,

Ssexchar

(2)check(Ssex='

男'

orSsex='

女'

),

Sageintcheck(Sage>

=15andSage<

=45),

Sdeptchar(20)default'

计算机系'

4.createtableSC(/*创建SC表*/

Snochar(7),

Cnochar(10),

Gradeintcheck(Grade>

=0andGrade<

=100)

primarykey(Sno,Cno),

foreignkey(Cno)referencesCourse(Cno),

foreignkey(Sno)referencesStudent(Sno)

8.4数据表的维护与管理

1.altertablestudentadd电话号码char(8)

2.altertablestudentdropcolumn电话号码

3.altertablecoursealtercolumncnamechar(40)notnull

4.

(1)insertintostudentvalues('

'

'

陈东'

18,'

信管系'

(2)insertintocoursevalues('

c08'

logidtic'

2,1,32)

5.略

6.略

7.

(1)insertintostudentvalues('

张明'

null)

(2)insertintoscvalues('

(3)updatestudentsetsage=sage+1

(4)updatescsetgrade=44wheregrade=60

(5)deletefromscwheregrade<

60

8.5SQL简单查询功能

1.selectSno,SnamefromStudentorderbySno

2.select*fromCourse

3.selectSnoas学号,Gradeas成绩fromSCwhereGrade<

70

4.selectdistinctSnofromSC

5.selectSno,GradefromSCwhereCno='

C03'

andGrade>

6.selectSnofromSCwherecno='

andGradebetween70and80

7.select*fromStudentwhereSdept='

orSdept='

8.selectsno,grade=grade+10fromscwherecno='

c03'

9.selectCno,GradefromSCwhereSno='

10.selecttop3*fromStudent

11.select*fromStudentwhereSnamelike'

%王%'

12.select*fromCoursewhereCnamenotlike'

%数据%'

13.selectSname姓名,2008-Sage出生年份fromStudent

14.select*fromCoursewhereCnamelike'

%DB\_%'

escape'

\'

15.selectSno,CnofromSCwhereGradeisnull

16.select*fromSCorderbySno,Cnodesc

17.selectSname,Sdept,SagefromStudentwhereSagenotbetween20and23

18.selectSname,SnofromStudentwhereSnamelike'

_[小大]%'

19.select*fromStudentorderbySdept,Sagedesc

8.6SQL高级查询功能

1.selectSdept,count(*)fromStudentgroupbySdept

2.selectmax(Sage),min(Sage)fromStudentwhereSdept='

3.selectsnamefromstudentwheresagein(selectmax(sage)fromstudentwheresdept='

selectsnamefromstudentwheresagein(selectmin(sage)fromstudentwheresdept='

4.selectmax(grade)max,min(grade)min,sum(grade)sum,avg(grade)avgfromscgroupbycnohavingcno='

c01'

5.selectStudent.Sno,Sname,Cname,GradefromStudent,SC,CoursewhereStudent.Sno=SC.SnoandCourse.Cno=SC.Cno

6.selectCno,count(Sno)fromSCgroupbyCno

7.selectSno,count(Cno),sum(Grade)fromSCgroupbySno

8.selecto,cnamefromsc,coursewheresc.snoisnullando=o

9.selectdistinctsnamefromstudent,scwherestudent.sno=sc.snoandsc.snoin(selectsnofromscgroupbysnohavingavg(grade)>

80)

10.selectSdept,SnamefromStudentwhereSnoin

(selectSnofromSCwhereCno='

selectSdept,SnamefromStudent,SCwhereStudent.Sno=SC.SnoandCno='

11.selectSnamefromStudentwhereSnoin(

selectSnofromSCwhereGrade>

80andCnoin(

selectCnofromCoursewhereCname='

数据库基础'

))

selectSnamefromStudent,SC,CoursewhereStudent.Sno=SC.SnoandCourse.Cno=SC.CnoandCname='

80

12.selectdistinctCnamefromCoursewhereCnoin(

selectCnofromSCgroupbyCnohavingavg(Grade)>

70)

13.selectSname,SdeptfromStudentwhereSnoin(

selectSnofromSCgroupbySnohavingavg(Grade)>

14.selectStudent.Sno,Sname,Course.Cno,Cname,GradefromStudent,SC,CoursewhereStudent.Sno=SC.SnoandCourse.Cno=SC.Cno

15.selectSno,sum(Grade)fromSCgroupbySno

16.selectSno,sum(Grade)fromSCgroupbySnohavingsum(Grade)>

150

17.selectSnofromSCgroupbySnohavingcount(Cno)>

=3

18.selectsname,cname,gradefromsc,student,coursewheresdept=’信管系’

8.7视图的创建与管理

1.启动查询分析器

2.createviewIS_StudentASselect*fromstudentwheresdept='

3.createviewC_courseasselect*fromcoursewhereccredit='

4'

4.createviews_student(sno,sname,sage,sdept,grade)as

selectsc.sno,sname,sage,sdept,gradefromstudent,scwherestudent.sno=sc.snoandgrade>

90

5.createviewc_student(sno,sname,sage,sdept,grade,cname)

as

selectsc.sno,sname,sage,sdept,grade,cname

fromcourse,sc,student

wheresc.sno=student.snoando=oandgrade>

85andcname='

DB'

6.createviewSC_student(sno,sname,sage,sdept)

as

selectsc.sno,sname,sage,sdept

fromstudent,sc

wherestudent.sno=sc.snoandstudent.snoin

(selectsnofromscgroupbysnohavingavg(grade)>

7.dropviewc_course

第10章数据库设计实验

10.1数据库设计基础实验

1.设计能够表示出班级与学生关系的数据库。

①确定班级实体和学生实体的属性。

班级(班号,专业名,系名,入学年份,人数)

学生(学号,姓名,年龄)

②确定班级和学生之间的联系,给联系命名并指出联系的类型。

包含类型:

1对多

③确定联系本身的属性。

没有属性

④画出班级与学生关系的E-R图。

⑤将E-R图转化为关系模式,写出各关系模式并标明各自的主码或外码。

学生(学号,姓名,年龄,班号)

2.设计能够表示出顾客与商品关系的数据库。

①确定顾客实体和商品实体的属性。

顾客(顾客号,顾客姓名,年龄、性别,地址,单位,电话号码)

商品(商品编号,商品名称,型号,单价)

②确定顾客和商品之间的联系,给联系命名并指出联系的类型。

购买多对多

购买(数量、日期)

④画出顾客与商品关系的E-R图。

⑤将E-R图转化为关系模式,写出表的关系模式并标明各自的主码或外码。

购买(商品编号,顾客号,数量,日期)

3.设计能够表示学校与校长关系的数据库。

①确定学校实体和校长实体的属性。

学生(学号,姓名,年龄,专业名,系名,入学年份)

学校校长(校长姓名,身份证号,婚否,办公室地址)

②确定学校和校长之间的联系,给联系命名并指出联系的类型。

管理1对多

管理(学校名称、地址)

④画出学校与校长关系的E-R图。

学生(学号,姓名,年龄,专业名,系名,入学年份,学校名称,地址,校长姓名)

4.设计能够表示出房地产交易中客户,业务员和合同三者之间关系的数据库。

1确定客户实体,业务员实体和合同实体的属性。

业务员(业务员编号、业务员姓名、家庭住址、电话)

客户(客户编号,客户姓名,客户地址,电话)

合同(合同编号,签订日期)

2确定客户,业务员和合同三者之间的联系,给联系命名并指出联系的类型。

业务员和客户之间拥有多对多

客户和合同之间签订1对多

3确定联系本身的属性。

拥有(建立联系的时间)

签订(签订时间,签订地点)

4画出客户,业务员和合同三者关系E-R图。

合同(合同编号,签订日期,签订地点,客户编号)

拥有(业务员编号,客户编号,建立联系的时间)

10.2数据库设计综合应用实验

1.根据需求提炼出实体

实体包括:

分支机构贷款客户逐次支付员工账户

2.确定实体间的联系

发放:

分支机构贷款

借贷:

贷款客户

支付:

贷款逐次支付

服务:

客户员工

储蓄:

客户账户

3.确定各个实体和联系的属性

分支机构(名称、地点、电话、法人代表)

贷款(编号、金额、开始时间,结束时间、利率)

客户(客户编号、姓名、联系电话、信用额度、客户级别)

逐次支付(支付的时间、金额、利率)

员工(员工编号、姓名、部门、电话)

账户(账户编号、开立时间、)

发放(发放的时间、金额)

借贷(借代的时间、金额、利率)

支付(支付的时间、金额)

服务(服务的次数)

储蓄(储蓄时间、金额、利率)

4.设计E-R图

5.关系模型

分支机构(机构名称、地点、电话、法人代表)

贷款(贷款编号、金额、结束时间、利率、发放的时间、机构名称)

客户(客户编号、姓名、联系电话、信用额度、客户级别、员工编号、服务的次数)

逐次支付(支付编号、支付的时间、金额、利率、贷款编号)

员工(员工编号、姓名、部门、电话)

账户(账户编号、开立时间)

借贷(贷款编号、客户编号、借代的时间、金额、利率)

储蓄(客户编号、账户编号、储蓄时间、金额、利率)

6.创建表的语句

createtable分支机构(

机构名称char(50),

地点char(100),

电话char(20),

法人代表char(20),

primarykey(机构名称))

createtable贷款(

贷款编号char(50),

金额char(50),

结束时间char(20),

利率char(20),

发放的时间char(20),

机构名称char(50),

primarykey(贷款编号),

foreignkey(机构名称)references分支机构(机构名称))

createtable客户(

客户编号char(50),

姓名char(50),

联系电话char(20),

信用额度char(50),

客户级别char(50),

员工编号char(50),

服务的次数char(0),

primarykey(客户编号),

foreignkey(员工编号)references员工(员工编号))

createtable逐次支付(

支付编号char(50),

支付的时间char(20),

金额char(50),

利率char(50),

primarykey(支付编号),

foreignkey(贷款编号)references贷款(贷款编号))

createtable员工(

部门char(50),

电话char(50),

primarykey(员工编号))

createtable账户(

账户编号char(50),

开立时间char(20),

primarykey(账户编号))

createtable借贷(

客户编号char(50),

借代的时间char(20),

金额char(50),

利率char(50),

primarykey(贷款编号,客户编号)

foreignkey(贷款编号)references贷款(贷款编号)

foreignkey(客户编号)references客户(客户编号))

createtable储蓄(

储蓄时间char(20),

primarykey(账户编号,客户编号)

foreignkey(账户编号)references账户(账户编号)

第12章开发数据库系统实例

12.1使用VisualBasic开发学生管理系统实例

查询代码

DimcnAsConnection

PrivateSubCommand1_Click()

DimcmdAsCommand

DimiAsString

Setcmd=NewCommand

Setrs=NewRecordset

i=Trim(Text1.Text)

With

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

当前位置:首页 > 农林牧渔 > 林学

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

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