网络数据库技术复习.docx
- 文档编号:14948044
- 上传时间:2023-06-28
- 格式:DOCX
- 页数:20
- 大小:25.18KB
网络数据库技术复习.docx
《网络数据库技术复习.docx》由会员分享,可在线阅读,更多相关《网络数据库技术复习.docx(20页珍藏版)》请在冰点文库上搜索。
网络数据库技术复习
《网络数据库应用技术》复习
第一部分SQLSERVER数据库的管理
一、学习目的:
1、掌握使用企业管理器注册、连接SQL数据库服务器
2、学会使用企业管理器新建、修改、删除数据库
3、学会使用查询设计器、利用查询设计器创建数据库
二、掌握内容:
1.使用服务管理器启动和停止SQLServer本地服务器
✓打开“程序-MicrosoftSQLServer-服务管理器”,打开服务管理器。
✓在服务器列表中列出了本地服务器名,此服务器名用于注册。
✓如果服务器已经运行,则图标上有一个绿色的三角箭头。
如服务器处于停止状态,则图标上有一红色方框。
点击服务管理界面上的开始、停止、暂停按钮,掌握启动、暂停、停止服务器的方法。
✓界面上的“服务”下拉列表中列出了服务器的服务项目。
分别有SQLServer服务、SQLServer代理服务、搜索服务、MSDTC(分布式事务管理)服务。
2.企业管理器
✓单击“开始-程序-MicrosoftSQLServer-企业管理器”,出现企业管理器的嵌入MMC界面。
✓了解企业管理器“操作”、“工具”两菜单中各菜单项。
用鼠标指向工具栏上各工具按钮,稍停后出现工具提示,了解各工具按钮的作用。
3.注册SQL服务器
✓展开树形列表中的“MicrosoftSQLServers”项目,展开服务器组“SQLserver组”,如此台机器没有进行过SQL服务器的注册,则必须注册服务器才能进一步使用,如已经注册,则可以在树形目录下看到已经注册的服务器。
✓用鼠标右击服务器组图标,在弹出的快捷菜单中选“新建SQLServer注册”菜单项,打开注册向导。
(可以在选中“SQLServer组”项目时,执行工具-向导,在打开的选择向导对话框中双击“注册服务器向导”来运行向导。
)
✓在向导的“选择一个SQLServer”步骤中,双击左边列表中本机的服务器名,使之移动到右侧“添加的服务器”列表中,单击下一步。
✓在“选择身份验证模式”步骤中,选择Windows身份验证,单击下一步。
✓在“选择SQLServer组”步骤中,选择在现有组中添加,单击下一步。
✓在“完成注册”步骤中单击完成按钮。
关闭注册成功消息框后,可以看到已经注册的服务器处于组中,并有一个绿色小三角表示已经连接。
打开服务器的树状目录,了解各项目中的内容。
如果服务器未连接而呈一白色小圆圈,可双击该服务器,或右击后执行快捷菜单中的连接菜单项。
✓打开树状目录下的数据库项,了解master、model、msdb、tempdb、Northwind、pubs各数据库的作用。
4数据库的结构
✓(1个)主数据文件+(0-n个)辅数据文件+(1-n个)日志文件
✓主数据文件:
主数据文件是所有数据库文件的起点,主数据文件包含指向其他数据库文件的指针。
每个数据库都必须包含一个也只能包含一个主数据文件,主数据文件的默认扩展名是mdf。
✓辅数据文件:
辅数据文件是数据库文件中,除主数据文件以外的其它数据文件。
数据库可以没有辅数据文件,也可以拥有多个辅数据文件。
辅数据文件的默认扩展名是ndf。
✓日志文件:
日志文件用于存放恢复数据库用的所有日志信息。
每个数据库至少有一个日志文件,也可以拥有多个日志文件。
日志文件的默认扩展名是ldf。
5.在企业管理器中创建数据库
以下举例说明要求掌握的内容:
✓在本地服务器树状目录中右击“数据库”,执行新建数据库菜单项,打开数据库属性对话框。
✓在常规选项卡上,设置新建的数据库名称为MyDB。
✓在数据文件选项卡上,设置文件名(逻辑文件名)为MyDB_Data1,
位置(物理文件名)为“c:
\Programfiles\MicrosoftSQLServer\MSSQL\Data\MyDB_Data1_Data.MDF”,文件组为PRIMARY,文件大小为2M。
新建一个数据库文件,文件名为MyDB_Data2,物理文件名为“c:
\Programfiles\MicrosoftSQLServer\MSSQL\Data\MyDB_Data2_Data.MDF”,文件大小也为2M。
文件属性设置为文件自动增长并按百分比10%的幅度增长,文件大小不受限制。
在事务日志选项卡上,设置逻辑文件名为MyDB_Log,物理文件名为“c:
\programfiles\MicrosoftSQLServer\MSSQL\Data\MyDB_Log.LDF”,文件大小为2M,文件属性同数据文件。
6.在企业管理器中修改数据库
✓右击先前所创始的数据库,点击属性菜单项,打开属性对话框。
✓在文件组选项卡上,新建一个用户定义文件组,名称为Secondary。
在数据文件选项卡上新建逻辑文件MyDB_Data3,文件大小为1M,将文件置于文件组Secondary中。
✓掌握选项、权限两选项卡上的各项设置,弄懂各项设置的含义。
7.查询分析器的使用
✓打开MicrosoftSQLServer-查询分析器,在打开的连接对话框中采用Windows身份验证或SQLServer身份验证,连接正确后即打开查询分析器界面。
✓了解查询分析器的菜单系统,了解工具栏上各工具的作用。
✓按下工具栏上的对象浏览器按钮,打开对象浏览器窗格。
了解对象浏览器中所列服务器上的各数据库,以及各公用对象。
✓点击对象浏览器下方的模板标签,打开模板窗格,了解所列出的各种脚本模板。
如,打开CreateDatabase目录,双击CreateDatabaseBasicTemplate项,就可打开一个列着创建数据库的查询窗口,也可以用鼠标把所选的项拖到已有的查询窗口来添加相应的模板。
✓在查询窗口输入下列查询内容后,按工具栏上的“分析查询”(快捷键Ctrl+F5)和“执行查询”(快捷键F5),了解查询分析器对程序的检查和执行情况:
usemaster
selectname,id,status,crdatefromdbo.sysobjects
go
✓对象浏览器按照树形结构方式组织所有的数据库对象,树形结构按照严格的层次关系布局,从上到下依次是:
服务器—数据库—数据库对象(如表)—数据库对象的组成部分(如索引、列等)。
✓SQLServer2000预先设置了一些常用的查询命令,通过使用这些预先设置的查询命令,可以很方便地实现对数据库的查询。
✓SQLServer2000提供的预设查询命令还包括:
创建、修改、除去、插入、更新等等。
可以通过练习熟悉对象浏览器的使用方法。
8.利用查询分析器创建数据库
✓在查询窗口中输入下列内容(请先理解各语句之含义):
ifexists(selectnamefrommaster.dbo.sysdatabaseswherename=‘xscj’)
dropdatabasexscj
go
createdatabasexscj
on
(name='xscj1_data',
filename=‘d:
\lianxi\sqlserver\xscj.mdf',
size=5mb,
maxsize=50mb,
filegrowth=10%
)
logon
(name='xscj1_log',
filename=‘d:
\lianxi\sqlserver\xscj.ldg',
size=2mb,
maxsize=5mb,
filegrowth=1mb
)
输入正确并执行完成后,在对象浏览器中执行右击服务器名,执行刷新快捷菜单,了解数据库的创建,并在企业管理器中检查新建的数据库,在windows资源管理器中检查创建的数据库文件。
✓同时要掌握具有多个数据文件,多个日志文件的数据库的创建方法。
第二部分表的创建、修改和删除
一学习目的:
1、掌握使用企业管理器创建、修改和删除表的方法
2、掌握在查询分析器中用T-SQL语句创建、修改和删除表
3、掌握通过DTS导入导出向导导入数据表的方法
二掌握内容:
1.在企业管理器中创建数据表
✓启动SQLServer企业管理器,注册本地服务器,打开数据库xscj。
✓回到企业管理器界面,刷新服务器,依次打开数据库-xscj-表,右击树状目录的“表”选项,执行快捷菜单中的“新建表”命令,进入表设计界面。
✓按如下要求设计新表“学生表s”:
设计好之后,选中第一个字段,按下工具栏上的“设置主键”按钮,将“学生编号”作为本表的主键。
注意:
✓列的标识属性:
对任何表都可以创建包含系统所生成序列值的一个标识列,该序号值唯一标识表中的一行,可以作为键。
✓每个表只能有一个列设置为标识属性,该列只能是decimal,numeric,int,smallint,bigint,tinyint数据类型.
✓定义标识属性时,可以指定其种子值(起始值)和增量值。
系统自动更新标识列值
2.用T-SQL语句设计表
转换到查询分析器界面,在查询窗口输入语句,建立“课程表c”(可以在查询窗口中先拖入模板,再由模板修改):
createtable课程
(课程号char(10)notnull,
课程名称varchar(20),
学分intnull,
)
将程序保存为.sql文件。
3.在企业管理器中修改表
在企业管理器中展开xscj数据库中的表,执行修改表菜单项,打开表设计界面。
可以对选定的表的属性进行修改:
4.用T-SQL语句修改表
使用Altertable命令可以增加、删除和修改字段。
要求掌握简单的用法。
要求完成:
(1)删除“备注”字段
(2)增加“照片”字段
(3)姓名字段改为varchar类型
(4)性别字段改为char
(2)
参考:
altertable学生dropcolumn备注
altertable学生add照片imagenull
altertable学生altercolumn姓名varchar(20)
altertable学生altercolumn性别char
(2)
将修改程序保存为sql文件。
5.从外部数据源导入表
✓将Excel中的数据导入数据库中,该工作簿中只有一个工作表,打开Excel文件s.xls,了解该表的结构以及包含的记录,理解在导入到数据库后所应有的表名和表记录情况。
✓进入企业管理器界面,打开数据库-xscj-表选项,右击该项,执行所有任务-导入数据菜单项,在打开的DTS导入-导出向导中选择下一步。
✓在选择数据源选项卡上的数据源下拉列表中选择MicrosoftExcel97-2000,点击下面的文件名文本框右侧的按钮,在打开的选择文件对话框中找到刚下载的Excel文件,按下一步按钮。
✓在选择目的选项卡中选择目的为用于SQLServer的MicrosoftOLEDB提供程序,服务器为本地服务器,登录方式为Windows身份验证,数据库为xscj,按下一步按钮。
✓在指定表复制或查询选项卡中选择从源数据库复制表和视图,按下一步按钮。
✓在选择源表和视图选项卡上选中第一个源前面的复选框,按确定按钮后,按下一步按钮。
✓在保存、调度和复制包选项卡上选中立即运行,按下一步按钮。
✓在完成向导对话框中检查摘要,按完成按钮开始数据导入。
✓导入完成后,在表区域空处右击,执行刷新命令,再检查所导入的表,分别用设计表命令了解表结构,用打开表-返回所有行命令来了解导入的表记录。
6.在企业管理器中删除表
✓打开企业管理器,选择数据库-xscj-表项目,按住Ctrl键,在右侧列表中选中表,右击后执行“删除”快捷菜单命令,在除去对象窗口中,点击“全部除去”按钮,完成后,对界面刷新,观看表的删除操作结果。
7.用T-SQL语句删除表
✓打开查询分析器,输入以下程序:
usexscj
IFEXISTS(SELECTname
FROMsysobjects
WHEREname=‘card’
ANDtype='U')
DROPTABLEcard
go
第三部分数据完整性
一、学习目的:
1、掌握使用企业管理器中设置表的主键、外键、Check约束、默认值等完整性约束
2、掌握在查询分析器中用T-SQL语句设置表的完整性约束
3、了解关系图、规则、默认等数据库对象的设置
二、掌握内容
1、约束的类型
最常用的对表强制执行完整性的方法是使用约束,限制表或列中的值。
约束有六种,分别是:
✓主键约束(PrimaryKey)
✓外键约束(Foreignkey)
✓惟一约束(Unique)
✓非空约束(NotNull)
✓检查约束(Check)
✓默认约束(Default)
2.在企业管理器中创建带有主键约束的新表
3.用T-SQL语句为已有表添加主键
为c表加上主键
altertable课程addprimarykey(课程号)
4.创建外键约束
✓Foreignkey约束定义列值与另一个表的主键相匹配。
使用外键时应该注意:
Foreignkey约束必须引用另一个表的主键列或者Unique列。
✓建立三张表学生、课程、成绩表的外键关系。
创建学生成绩情况表sc
CreateTable成绩(
学号char(10),
课程号char(10),
成绩smallint,
PrimaryKey(学号,课程号),
ForeignKey(学号)References学生(学号),
ForeignKey(课程号)References课程(课程号)
)
5.用数据库关系图向导创建关系
数据库关系图实际上是外键约束的一种显式设置,以图形的方式来显示表与表之间的关系。
选择服务器的数据库-xscj-关系图项目,在项目上或右侧窗格中点击鼠标右键,执行快捷菜单中的新建数据库关系图菜单,打开创建数据库关系图向导。
6.用企业管理器创建外键约束
在企业管理器中打开“成绩”表的“表设计”界面,点击工具栏上的“管理关系”按钮,打开属性窗口的关系选项卡。
在这里可以看到已经建立的外键关系也可以新建外键关系点击新建按钮。
7.在企业管理器中创建CHECK约束
在企业管理器中打开“学生表”的设计界面,点击工具栏上的“管理约束”按钮,打开属性对话框的CHECK约束选项卡。
点击新建按钮新建一个检查约束,在约束表达式编辑框中输入下面条件语句:
出生日期<=getdate()
8.用T-SQL语句创建CHECK约束
9.对字段添加默认值
使用企业管理器或T-SQL语句可以为字段添加默认值,例如:
altertable课程adddefault2for学分
10.创建和使用规则对象
规则是一种数据库对象,创建后可以由数据库中所有表的不同字段所共享,一个字段只能应用一个规则,但可以应用多个CHECK约束。
规则所确定的的逻辑表达式类似于CHECK约束。
CREATERULEdate_chkAS@idBETWEEN'1970-1-1'and'1990-12-31'
sp_bindruledate_chk,'学生.出生日期'
11.系统存储过程sp_help的使用
系统存储过程sp_help可以用来了解数据库对象的信息。
对各种数据库对象,其返回的结果集请参见联机丛书中有关该存储过程的解释。
在查询分析器中输入并执行下面的内容,在网格窗格中了解该存储过程所返回的书籍档案表的相关信息。
Usexscj
execsp_help成绩
第四部分游标的使用
一、学习目的:
1、掌握使用游标的几个步骤
2、掌握使用游标来对数据进行修改的方法
二、掌握内容
1、游标的定义
一个对表进行操作的T-SQL语句通常都可产生或处理一组记录,但是许多应用程序,尤其是T-SQL嵌入到的主语言(如C、VB、PB或其他开发工具)通常不能把整个结果作为一个单元来处理,这些应用程序就需要一种机制来保证每次处理结果集中的一行或几行,游标(cursor)就提供了这种机制。
2、游标的使用过程
✓声明游标
✓打开游标
✓使用游标取数据
✓关闭游标
✓释放游标
3、标使用举例:
✓例子1、使用游标取数据操作(通常和while结构结合使用)。
--声明游标
declares_cursorcursorforselect*froms
--打开游标
opens_cursor
--使用游标取第一行数据
fetchnextfroms_cursor
--当操作成功则可以继续取数据
while@@fetch_status=0
begin
fetchnextfroms_cursor
end
--关闭游标
closes_cursor
--释放游标
deallocates_cursor
✓例子2使用游标修改数据
--声明游标
declares_cursorcursorforselect*froms
--打开游标
opens_cursor
--使用游标取第一行数据
fetchnextfroms_cursor
--当操作成功则可以继续修改数据
while@@fetch_status=0
begin
updatessetsname=rtrim(sname)+‘同学'wherecurrentofs_cursor
fetchnextfroms_cursor
end
--关闭游标
closes_cursor
--释放游标
deallocates_cursor
例子3:
新建一个分数表,把成绩表中的grade字段填入此表中,用游标实现。
第五部分存储过程和触发器
一、学习目的:
1、掌握存储过程的创建
2、掌握存储过程的调用方法和参数传递
3、学会创建和使用触发器
二、掌握内容
1、创建基本的存储过程
✓例子1
CREATEPROCeduregetstudent
AS
SELECT*FROM学生
✓例子2
createprocedurep1
as
selects.sno学号,s.sname姓名,o课程号,cname课程名,grade成绩
froms,sc,cwheres.sno=sc.snoando=o
Go
Execp1
2、创建带输入参数的存储过程
✓例子1
3、CREATEPROCeduregetstudent;2
(@ageint)
AS
SELECT*FROMsWHEREage>@age
Executegetstudent;220
✓例子2
createprocedurep2
@snamechar(10),@cnamechar(10)
as
selects.sno学号,s.sname姓名,o课程号,
cname课程名,grade成绩froms,sc,cwheres.sno=sc.snoando=o
ands.sname=@snameandame=@cname
go
execp2'zs','hx'
3、带输入、输出参数的存储过程
CREATEPROCEDUREp4
@namechar(20),@avg_gradeintOUTPUT
AS
SELECT@avg_grade=avg(grade)fromsc
wheresno=
(selectsnofromswheresname=@name)
执行:
DECLARE@tint
EXECUTEp4'l4',@tOUTPUT
SELECT@t
4、带参数和返回状态值的存储过程。
CREATEPROCeduregetstudent;3
(@ageint=NULL)
AS
IF@ageISNULL
BEGIN
PRINT'必须提供一个数值作参数!
'
RETURN13
END
IFNOTEXISTS(SELECT*FROMsWHEREage>@age)
BEGIN
PRINT'没有满足条件的记录!
'
RETURN-103
END
SELECT*FROMsWHEREage>@age
RETURN0
DECLARE@statusint
EXECUTE@status=getstudent;321
print@status
5、触发器
触发器可以看作是一类特殊的存储过程,它在满足某个特定条件时自动触发执行。
一个触发器和三部分内容有关:
✓定义触发器的表
✓激活触发器的数据操作语句
✓触发器要采取的动作
✓例子1、
CREATETRIGGERsinsert_trigger
ONs
FORINSERT
ASPRINT'插入了一个学生元组'
✓例子2
CREATETRIGGERs_del_trigger
ONsFORDELETE
AS
UPDATEsc
SETgrade=NULL
WHEREsno=(SELECTsnoFROMdeleted)
✓例子3:
对sc表的插入操作定义一个触发器,使得当往sc中插入学生记录时,检查相应的学生元组是否在s中存在,如果不存在则撤消所做的插入操作。
CREATETRIGGERsc_ins_trigger
ONscFORINSERT
AS
IF(SELECTCOUNT(*)FROMs学生表,
inserted插入视图
WHERE学生表.sno=插入视图.sno)=0
BEGIN
RAISERROR('非法学号!
',1,1)
ROLLBACKTRANSACTION
END
✓例子4:
对sc表的更新操作定义一个触发器,使得当学生变换所选修课程时,检查相应的课程元组是否存在,如果不存在则撤消所做的更新操作,如果新的课程号是C2则将成绩提高10%。
CREATETRIGGERsc_upd_trigger
ONscFORUPDATE
AS
DECLARE@cnoCHAR(4)
IFUPDATE(cno)
BEGIN
IF(SELECTCOUNT(*)FROMc课程表,inserted插入视图
WHERE课程表.cno=插入视图.cno)=0
BEGIN
RAISERROR('非法课程号!
',16,1)
ROLLBACKTRANSACTION
END
ELSE
BEGIN
SELECT@cno=cnoFROMinserted
IF@cno='c2'
UPDATEscSETgrade=grade*1.10
WHEREcno=(SELECTcnoFROMinserted)
END
END
第六部分数据库的备份和恢复
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 网络 数据库技术 复习