实验一SQL Server 数据库的安装和创建数据库.docx

上传人:b****1 文档编号:1994449 上传时间:2023-05-02 格式:DOCX 页数:21 大小:288.88KB
下载 相关 举报
实验一SQL Server 数据库的安装和创建数据库.docx_第1页
第1页 / 共21页
实验一SQL Server 数据库的安装和创建数据库.docx_第2页
第2页 / 共21页
实验一SQL Server 数据库的安装和创建数据库.docx_第3页
第3页 / 共21页
实验一SQL Server 数据库的安装和创建数据库.docx_第4页
第4页 / 共21页
实验一SQL Server 数据库的安装和创建数据库.docx_第5页
第5页 / 共21页
实验一SQL Server 数据库的安装和创建数据库.docx_第6页
第6页 / 共21页
实验一SQL Server 数据库的安装和创建数据库.docx_第7页
第7页 / 共21页
实验一SQL Server 数据库的安装和创建数据库.docx_第8页
第8页 / 共21页
实验一SQL Server 数据库的安装和创建数据库.docx_第9页
第9页 / 共21页
实验一SQL Server 数据库的安装和创建数据库.docx_第10页
第10页 / 共21页
实验一SQL Server 数据库的安装和创建数据库.docx_第11页
第11页 / 共21页
实验一SQL Server 数据库的安装和创建数据库.docx_第12页
第12页 / 共21页
实验一SQL Server 数据库的安装和创建数据库.docx_第13页
第13页 / 共21页
实验一SQL Server 数据库的安装和创建数据库.docx_第14页
第14页 / 共21页
实验一SQL Server 数据库的安装和创建数据库.docx_第15页
第15页 / 共21页
实验一SQL Server 数据库的安装和创建数据库.docx_第16页
第16页 / 共21页
实验一SQL Server 数据库的安装和创建数据库.docx_第17页
第17页 / 共21页
实验一SQL Server 数据库的安装和创建数据库.docx_第18页
第18页 / 共21页
实验一SQL Server 数据库的安装和创建数据库.docx_第19页
第19页 / 共21页
实验一SQL Server 数据库的安装和创建数据库.docx_第20页
第20页 / 共21页
亲,该文档总共21页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

实验一SQL Server 数据库的安装和创建数据库.docx

《实验一SQL Server 数据库的安装和创建数据库.docx》由会员分享,可在线阅读,更多相关《实验一SQL Server 数据库的安装和创建数据库.docx(21页珍藏版)》请在冰点文库上搜索。

实验一SQL Server 数据库的安装和创建数据库.docx

实验一SQLServer数据库的安装和创建数据库

实验一:

SQLServer数据库的安装和创建数据库

一、实验目的:

熟悉SQLServer2000的安装过程及运行环境,掌握企业管理器的使用

二、实验内容:

在服务器的操作系统下安装SQLServer2000版本的服务器端和客户端软件,在安装成功后,登录SQLServer服务器,运行企业管理器和查询分析器。

三、实验步骤:

 

实验二:

创建表及对表的基本操作

一、实验目的:

掌握利用企业管理器创建数据库、创建表的方法,理解关系型数据库中的表的属性名、数据类型及表的主外键等

二、实验内容:

创建一个名称为factory的数据库并建立相关表

三、实验步骤:

(1)将主数据库文件factory-data.MDF放置在E:

\DBF文件夹中,其文件大小自动增长为按5MB增长。

(2)将事务日志文件factory-data.MDF放置在E:

\DBF文件夹中,其文件大小自动增长为按1MB增长。

(3)建立职工表worker,其结构:

职工号:

int,姓名:

char(8),性别:

char

(2),出生日期:

datatime,党员否:

bit,参加工作:

datatime,部门号:

int。

其中“职工号”为主键。

在worker表中输入如下记录:

(4)建立部门表depart,其结构为:

部门号:

int,部门名:

char(10)。

其中,“部门号”为主键。

在depart表中输入如下记录:

(5)建立职工工资表salary,其结构为:

职工号:

int,姓名:

char(8),,出生日期:

datatime,工资:

dacimal(6,1)。

其中“职工号”和“日期”为主键。

在salary表中输入如下记录:

(6)建立worker、depart和salary3个表之间的关系。

实验三:

数据查询

一、实验目的:

掌握各种查询语句的实现,包括一定程度的复杂查询,掌握利用SQLServer2000的查询分析器书写SQL语句进行各种查询、插入记录值及删除记录值

二、实验内容:

在factory数据库中实现查询、插入数据、删除数据

(1)显示所有职工的年龄。

(2)求出各部门的党员人数。

(3)显示所有职工的姓名和2004年1月份的工资数。

(4)显示所有职工的职工号、姓名和平均工资。

(5)显示所有职工的职工号、姓名、部门名和2004年2月份工资,并按部门名顺序排列。

(6)显示各部门和该部门的所有职工平均工资。

(7)显示所有平均工资高于1200的部门名和对应的平均工资。

(8)显示所有职工的的职工号、姓名和部门类型,其中财务处和人事处属管理部门,市场部属市场部门

(9)若存在职工号为10的职工,则显示其工作部门名称,否则显示相应提示信息。

(10)求出男女职工的平均工资,若男职工平均工资与女职工平均工资在1.5~0.8之间,则显示“男职工和女职工的平均工资差不多”的信息:

否则,显示“女职工比男职工的工资高多了”的信息

三、实验步骤:

selecto.id,c.text

fromsysobjectsoinnerJOINsyscommentscono.id=c.id

whereo.type='p'ando.name='oakland_authors'

go

alterprocoakland_authors

withENCRYPTION

as

selectau_fname,au_lname,address,city,zip

frompubs.authors

wherestate='ca'

orderbyau_lname,au_fname

go

selecto.id,c.text

fromsysobjectsoinnerjoInsyscommentscono.id=c.id

whereo.type='p'ando.name='oakland_authors'

go

selectcustomer.customer

fromcustomer,loan

whereloan.bank='农业银行'

andloan.laccount=customer.account

实验四:

索引的应用

一、实验目的:

利用企业管理器在数据库的表上创建索引,理解创建索引的目的意义

二、实验内容:

在factory数据库的三章表中建立索引

三、实验步骤:

实验五:

视图的应用

一、实验目的:

通过企业管理器和查询分析器建立视图,掌握创建视图的方法,理解利用视图的便利之处

二、实验内容:

(1)建立视图view1,查询所有职工的职工号、姓名、部门名和2004年2月份的工资,并按部门名顺序排序

(2)建立视图view2,查询所有职工的职工号、姓名和平均工资

(3)建立视图view3,查询各部门和该部门的所有职工的平均工资

(4)显示视图view3的定义

三、实验步骤:

selectbank

fromdeposite

groupbybank

havingsum(account)>=all(selectsum(account)assumc

fromdeposite

whereddatelike'2004%'

groupbybank

selectsum(account)

fromdeposite

groupbybank

whereddate>='2004-01-01'

andddate<='2004-12-31'

usestudent

go

createview数据库系统概论成绩as

selecta.sid,a.sname,ame,c.score

fromt_stuasainnerjoint_scoreasc

ona.sid=c.sidinnerjoint_courseasb

onb.cid=c.cid

whereame='数据库系统概论'

go

select*from数据库系统概论成绩

orderbyscoredesc

实验六:

存储过程与触发器的应用

一、实验目的:

掌握通过企业管理器和查询分析器创建存储过程与触发器的方法,理解存储过程与触发器的运行机理

二、实验内容:

(1)创建一个为worker表添加职工记录的存储过程addworker

(2)创建一个存储过程delworker删除worker表中指定职工号的记录

(3显示存储过程delworker

(4)删除存储过程delworker和addworker

(5)在表depart上创建一个触发器depart_update,当更改部门号时同步更改worker表中对应的部门号

(6)在表worker上创建一个触发器worker_delete,当删除职工记录时同步删除slalry表中对应职工的工资记录

(7)删除触发器depart_update和worker_delete

三、实验步骤:

ifexists(selectnamefromsysobjects

wherename='p1'andtype='p')

dropprocp1

go

createprocp1

@banknamevarchar(50),

@count5yvarchar(50)output

as

select@count5y=bank

fromdeposite

wherebank=@bankname

anddtype='定期'

go

declare@banknvarchar(50)

execp1'交通银行',@banknoutput

go

createprocdbo.dt_addtosourcecontrol

@vchSourceSafeINIvarchar(255)='',

@vchProjectNamevarchar(255)='',

@vchCommentvarchar(255)='',

@vchLoginNamevarchar(255)='',

@vchPasswordvarchar(255)=''

as

setnocounton

declare@iReturnint

declare@iObjectIdint

select@iObjectId=0

declare@iStreamObjectIdint

select@iStreamObjectId=0

declare@VSSGUIDvarchar(100)

select@VSSGUID='SQLVersionControl.VCS_SQL'

declare@vchDatabaseNamevarchar(255)

select@vchDatabaseName=db_name()

declare@iReturnValueint

select@iReturnValue=0

declare@iPropertyObjectIdint

declare@vchParentIdvarchar(255)

declare@iObjectCountint

select@iObjectCount=0

exec@iReturn=sp_OACreate@VSSGUID,@iObjectIdOUT

if@iReturn<>0GOTOE_OAError

 

/*CreateProjectinSS*/

exec@iReturn=sp_OAMethod@iObjectId,

'AddProjectToSourceSafe',

NULL,

@vchSourceSafeINI,

@vchProjectNameoutput,

@@SERVERNAME,

@vchDatabaseName,

@vchLoginName,

@vchPassword,

@vchComment

 

if@iReturn<>0GOTOE_OAError

exec@iReturn=sp_OAGetProperty@iObjectId,'GetStreamObject',@iStreamObjectIdOUT

if@iReturn<>0GOTOE_OAError

/*SetDatabaseProperties*/

begintranSetProperties

/*addhighlevelobject*/

exec@iPropertyObjectId=dbo.dt_adduserobject_vcs'VCSProjectID'

select@vchParentId=CONVERT(varchar(255),@iPropertyObjectId)

execdbo.dt_setpropertybyid@iPropertyObjectId,'VCSProjectID',@vchParentId,NULL

execdbo.dt_setpropertybyid@iPropertyObjectId,'VCSProject',@vchProjectName,NULL

execdbo.dt_setpropertybyid@iPropertyObjectId,'VCSSourceSafeINI',@vchSourceSafeINI,NULL

execdbo.dt_setpropertybyid@iPropertyObjectId,'VCSSQLServer',@@SERVERNAME,NULL

execdbo.dt_setpropertybyid@iPropertyObjectId,'VCSSQLDatabase',@vchDatabaseName,NULL

if@@error<>0GOTOE_General_Error

committranSetProperties

declarecursorProcNamescursorfor

selectconvert(varchar(255),name)fromsysobjectswheretype='P'andnamenotlike'dt_%'

opencursorProcNames

while1=1

begin

declare@vchProcNamevarchar(255)

fetchnextfromcursorProcNamesinto@vchProcName

if@@fetch_status<>0

break

selectcolid,textinto#ProcLines

fromsyscomments

whereid=object_id(@vchProcName)

orderbycolid

declare@iCurProcLineint

declare@iProcLinesint

select@iCurProcLine=1

select@iProcLines=(selectcount(*)from#ProcLines)

while@iCurProcLine<=@iProcLines

begin

declare@posint

select@pos=1

declare@iCurLineSizeint

select@iCurLineSize=len((selecttextfrom#ProcLineswherecolid=@iCurProcLine))

while@pos<=@iCurLineSize

begin

declare@vchProcLinePiecevarchar(255)

select@vchProcLinePiece=convert(varchar(255),

substring((selecttextfrom#ProcLineswherecolid=@iCurProcLine),

@pos,255))

exec@iReturn=sp_OAMethod@iStreamObjectId,'AddStream',@iReturnValueOUT,@vchProcLinePiece

if@iReturn<>0GOTOE_OAError

select@pos=@pos+255

end

select@iCurProcLine=@iCurProcLine+1

end

droptable#ProcLines

exec@iReturn=sp_OAMethod@iObjectId,

'CheckIn_StoredProcedure',

NULL,

@sProjectName=@vchProjectName,

@sSourceSafeINI=@vchSourceSafeINI,

@sServerName=@@SERVERNAME,

@sDatabaseName=@vchDatabaseName,

@sObjectName=@vchProcName,

@sComment=@vchComment,

@sLoginName=@vchLoginName,

@sPassword=@vchPassword,

@iVCSFlags=0,

@iActionFlag=0,

@sStream=''

if@iReturn=0select@iObjectCount=@iObjectCount+1

end

CleanUp:

closecursorProcNames

deallocatecursorProcNames

select@vchProjectName

select@iObjectCount

return

E_General_Error:

/*thisisanallornothing.Nospecificerrormessages*/

gotoCleanUp

E_OAError:

execdbo.dt_displayoaerror@iObjectId,@iReturn

gotoCleanUp

GO

实验七:

SQL语句查询功能

一、实验目的:

掌握利用查询分析器,使用SQL语句实现上面的各种功能的方法

二、实验内容:

(1)删除factory数据库上各个表之间建立的关系

(2)显示各职工的工资记录和相应的工资小计。

(3)按性别和部门名的所有组合方式列出相应的平均工资。

(4)在worker表中使用以下语句插入一个职工记录:

insertintodepartvalues(5,’设备处’)

在对worker和depart表进行完整外部连接显示职工的职工号、姓名、和部门名,然后删除这两个插入的记录

(5)显示最高工资的职工的职工号、姓名、部门名、工资发放日期和工资

(6)显示最高工资的职工所在的的部门名

(7)显示所有平均工资低于全部平均工资的职工的职工号、姓名

(8)采用游标方式实现(6)的功能

(9)采用游标方式实现(7)的功能

(10)先显示worker表中的职工人数,开始一个事务,插入一个职工记录,再显示worker表中的职工人数,回滚该事务,最后显示worker表中的职工人数

(11)在worker表中的部门号列上建立一个非聚集索引,若该索引已存在,则删除后重建

(12)在salary表的职工号列和日期列上创建聚集索引,并且强制唯一性

三、实验步骤:

deletefromemployees

whereyear(birthdate)<2000

selectdistinctcustomer.customer

fromcustomer,loan

wherecustomer.account=loan.laccount

andloan.bank='工商银行'

andcustomer.customeridin

(selectcustomerid

fromcustomer,deposite

wherecustomer.account=deposite.daccount

anddeposite.bank='工商银行'

 

实验八:

SQLServer的管理及数据库的备份与还原

一、实验目的:

掌握SQLServer的管理及数据库的备份与还原的方法,自动实现数据库的管理

二、实验内容:

(1)创建一个登录账号ABC/123456

(2)为factory数据库中创建一个用户帐号,并将其关联到ABC登录账号中

(3)用企业管理器对factory数据库执行完全备份和还原操作

三、实验步骤:

实验九:

数据库与开发工具的协同使用

一、实验目的:

全面掌握数据库的系统开发过程,通过实际例子深入理解数据库的管理、使用和维护技巧

二、实验内容:

综合前面所学习的数据库知识,结合VB开发一个学生档案系统,完成班级内的学生个人资料管理、学习成绩管理、学生成绩统计、学期排名等日常教学中比较常用的功能,主要功能如下:

(1)学生个人资料管理

(2)学生成绩管理

(3)学生成绩统计、学期排名

三、实验步骤:

部分代码如下

'将图片保存到数据库中

PrivateSubSaveToDB(ByRefPICFieldAsADODB.Field,DiskFileAsString)

ConstBLOCKSIZE=4096'每次读写数据块的大小

DimbyteData()AsByte'定义数据块数组

DimNumBlocksAsLong'定义数据块个数

DimFileLengthAsLong'标识文件长度

DimLeftOverAsLong'定义剩余字节长度

DimSourceFileAsLong'定义自由文件号

DimIAsLong'定义循环变量

SourceFile=FreeFile'提供一个尚未使用的文件号

OpenDiskFileForBinaryAccessReadAsSourceFile

'打开文件

FileLength=LOF(SourceFile)'得到文件长度

IfFileLength=0Then'判断文件是否存在

CloseSourceFile

MsgBox"["+DiskFile+"]指定的文件不存在!

"

Else

NumBlocks=FileLength\BLOCKSIZE'得到数据块的个数

LeftOver=FileLengthModBLOCKSIZE'得到剩余字节数

PICField.Value=Null

ReDimbyteData(BLOCKSIZE)'重新定义数据块的大小

ForI=1ToNumBlocks

GetSourceFile,,byteData()'读到内存块中

PICField.AppendChunkbyteData()'写到要保存的字段中

NextI

ReDimbyteData(LeftOver)'重新定义数据块的大小

GetSourceFile,,byteData()'读到内存块中(剩余的字节)

PICField.AppendChunkbyteData()'写到要保存的字段中

CloseSourceFile'关闭源文件

EndIf

EndSub

该过程完成将指定的图片文件DiskFile保存在数据库PICField字段中的功能。

 

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

当前位置:首页 > 工程科技 > 能源化工

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2