资源预览内容
第1页 / 共30页
第2页 / 共30页
第3页 / 共30页
第4页 / 共30页
第5页 / 共30页
第6页 / 共30页
第7页 / 共30页
第8页 / 共30页
第9页 / 共30页
第10页 / 共30页
亲,该文档总共30页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述
单元二单元二 数据库的管理数据库的管理1本章内容本章内容2.1 SQL Server 2005数据库概述2.2 数据库的创建2.3 数据库的修改2.4 数据库的删除22.1 SQL Server 2005数据库概述数据库概述SQL Server中的数据库 3数据库的逻辑组件数据库的逻辑组件(数据库对象数据库对象) Sales数据库数据库SQL Server表表视图视图数据库的物理实现数据库的物理实现(数据库文件数据库文件)SalesDat1.mdfSalesDat2.ndfSalesLog1.ldf主数据文件主数据文件次数据文件次数据文件日志文件日志文件索引索引存储过程存储过程用户视图用户视图物理视图物理视图图图4-1数据库的用户视图和物理视图数据库的用户视图和物理视图2.1 SQL Server 2008数据库概述数据库概述1. SQL Server中的数据库对象SQL Server提供了很多逻辑组件,这些逻辑组件通常被称为数据库对象。 对对象象作用作用表表数据数据库库中数据的中数据的实际实际存放存放处处所。所。视图视图定制复定制复杂杂或常用的或常用的查询查询,以便用,以便用户户使用;限定用使用;限定用户户只只能能查查看表中的特定行或列;看表中的特定行或列;为为用用户户提供提供统计统计数据而不展示数据而不展示细节细节。索引索引加快从表或加快从表或视图视图中中检检索数据的效率。索数据的效率。存存储过储过程程提高性能;封装数据提高性能;封装数据库库的部分或全部的部分或全部细节细节;帮助在不;帮助在不同的数据同的数据库应库应用程序之用程序之间实现间实现一致的一致的逻辑逻辑。约约束、束、规则规则、默、默认值认值和触和触发发器器确保数据确保数据库库的数据完整性;的数据完整性;强强制制执行行业务规则。登登录录、用、用户户、角、角色和色和组组保障数据安全的基保障数据安全的基础础。42.1 SQL Server 2005数据库概述数据库概述2. SQL Server中的数据库文件5主数据文件主数据文件*.mdf仅有一个仅有一个事务日志文件事务日志文件*.ldf一到多个一到多个 次数据文件次数据文件*.ndf零到多个零到多个次数据文件次数据文件*.ndf零到多个零到多个(仅仅有有一一个个)主主文文件件组组(零零到到多多个个)次次文文件件组组事事务务日日志志一一个个数数据据库库的的文文件件集集图图4-2数据库的文件组成数据库的文件组成2.1 SQL Server 2005数据库概述数据库概述(1)数据文件数据文件是存放数据和数据库对象的文件。一个数据库可以有一个或多个数据文件,每个数据文件只属于一个数据库。当有多个数据文件时,有一个文件被定义为主数据文件(Primary Database File),扩展名为MDF,用来存储数据库的启动信息和部分或全部数据。其他数据文件被称为次数据文件(Secondary Database File) 扩展名为NDF,用来存储主数据文件没存储的其他数据。 62.1 SQL Server 2005数据库概述数据库概述(2)事务日志事务日志文件是用来记录数据库更新信息(例如使用INSERT、UPDATE、DELETE等语句对数据进行更改的操作)的文件。这些更新信息(日志)可用来恢复数据库。事务日志文件最小为 512 KB,扩展名为LDF。每个数据库可以有一个或多个事务日志文件。 72.1 SQL Server 2005数据库概述数据库概述(3)文件组 SQL Server允许对文件进行分组,以便于管理和数据的分配放置。所有数据库都至少包含一个主文件组,所有系统表都分配在主文件组中。用户可以定义额外的文件组。数据库首次创建时,主文件组是默认文件组;可以使用 ALTER DATABASE语句将用户定义的文件组指定为默认文件组。创建时没有指定文件组的用户对象的页将从默认文件组分配。在使用文件组时,应当注意以下几个准则:文件或文件组不能由一个以上的数据库使用。文件只能是一个文件组的成员。数据和事务日志信息不能属于同一文件或文件组。事务日志文件不能属于任何文件组。82.1 SQL Server 2005数据库概述数据库概述SQL Server的系统数据库 数据库服务器上已经自动建立了5个数据库,其中有4个系统数据库,还有一个系统数据库是资源系统数据库,它是一个隐藏的只读数据库。 系统数据库:master数据库tempdb数据库model数据库msdb 数据库mssqlsystemresource数据库 92.1 SQL Server 2005数据库概述数据库概述数据库对象的标识符 例如数据库名、表名、视图名、列名等。SQL Server标识符的命名遵循以下规则:(1)标识符包含的字符数必须在1到128之间。(2)标识符的第一个字符必须是字母、下划线(_)、at符号()或者数字符号(#)。(3)标识符的后续字符可以为字母、数字或“”符号、“$”符号、数字符号或下划线。 (4)标识符不能是Transact-SQL的保留字,也不能包含空格。 10查询分析器创建数据库查询分析器创建数据库【格式格式】:CREATEDATABASEdatabase_nameON,.n,.nLOGON,.nFORATTACH 。 1在查询分析器中用在查询分析器中用Transact-SQL命令创建数据库命令创建数据库 【功能功能】:创建一个名为创建一个名为“database_namedatabase_name”的数据库的数据库 :=PRIMARY(NAME=logical_file_name,FILENAME=os_file_name,SIZE=size,MAXSIZE=max_size|UNLIMITED,FILEGROWTH=growth_increment) 2.2 数据库的创建数据库的创建【例例1】定义一个名为定义一个名为CollegeMISB的数据库,该的数据库,该数据库的相关文件均存放到数据库的相关文件均存放到D:DataAppDataB文文件夹下。该数据库的主数据文件为件夹下。该数据库的主数据文件为CollegeMISB_Data,文件初始大小为,文件初始大小为4MB,最多,最多可以增长到可以增长到30MB,每次增长,每次增长5%;事务日志文件为;事务日志文件为CollegeMISB_Log,文件初始大小为,文件初始大小为2MB,最多,最多可以增长到可以增长到30MB,每次增长,每次增长1MB。(文件名为逻。(文件名为逻辑文件名,下同)。辑文件名,下同)。CREATE DATABASE CollegeMISBCREATE DATABASE CollegeMISBONON-主数据文件定义主数据文件定义(NAME=CollegeMISB_Data, /*(NAME=CollegeMISB_Data, /*主数据文件逻辑文件名主数据文件逻辑文件名* */ / FILENAME=D:DataAppDataBCollegeMISB_Data.mdf, /* FILENAME=D:DataAppDataBCollegeMISB_Data.mdf, /*主数据主数据文件操作系统文件名文件操作系统文件名* */ / SIZE=4MB, SIZE=4MB, MAXSIZE=30MB, MAXSIZE=30MB, FILEGROWTH=5%) FILEGROWTH=5%)LOG ONLOG ON-事务日志文件定义事务日志文件定义( NAME=CollegeMISB_Log, ( NAME=CollegeMISB_Log, FILENAME=D:DataAppDataBCollegeMISB_Log.ldf, FILENAME=D:DataAppDataBCollegeMISB_Log.ldf, SIZE=2, SIZE=2, MAXSIZE=30, MAXSIZE=30, FILEGROWTH=1mb) FILEGROWTH=1mb)GOGO【例例2】定义一个名为定义一个名为CollegeMISC的数据库,该的数据库,该数据库的相关文件均存放到数据库的相关文件均存放到“D:DataAppDataC”文件夹下。该数据库的主数据文件为文件夹下。该数据库的主数据文件为CollegeMISC_Data1,辅助数据文件为,辅助数据文件为CollegeMISC_Data2,主辅数据文件的初始大小,主辅数据文件的初始大小为为4MB,最多可以增长到,最多可以增长到30MB,每次增长,每次增长5%;事;事务日志文件有两个为务日志文件有两个为CollegeMISC_Log1和和CollegeMISC_Log2,文件初始大小为,文件初始大小为2MB,最多,最多可以增长到可以增长到30MB,每次增长,每次增长1MB。CREATE DATABASE CollegeMISCCREATE DATABASE CollegeMISCONON(NAME=CollegeMISC_Data1,(NAME=CollegeMISC_Data1, FILENAME=D:DataAppDataCColFILENAME=D:DataAppDataCCollegeMISC_Data1.mdf,legeMISC_Data1.mdf, SIZE=4MB, SIZE=4MB, MAXSIZE=30MB, MAXSIZE=30MB, FILEGROWTH=5%), FILEGROWTH=5%),(NAME=CollegeMISC_Data2,(NAME=CollegeMISC_Data2, FILENAME=D:DataAppDataCColFILENAME=D:DataAppDataCCollegeMISC_Data2.ndf,legeMISC_Data2.ndf, SIZE=4MB, SIZE=4MB, MAXSIZE=30MB, MAXSIZE=30MB, FILEGROWTH=5%) FILEGROWTH=5%)LOG ONLOG ON( NAME=CollegeMISC_Log1,( NAME=CollegeMISC_Log1, FILENAME=D:DataAppDataCColFILENAME=D:DataAppDataCCollegeMISC_Log1.ldf,legeMISC_Log1.ldf, SIZE=2, SIZE=2, MAXSIZE=30, MAXSIZE=30, FILEGROWTH=1), FILEGROWTH=1),( NAME=CollegeMISC_Log2,( NAME=CollegeMISC_Log2, FILENAME=D:DataAppDataCColFILENAME=D:DataAppDataCCollegeMISC_Log2.ldf,legeMISC_Log2.ldf, SIZE=2, SIZE=2, MAXSIZE=30, MAXSIZE=30, FILEGROWTH=1) FILEGROWTH=1)GOGO【例例3】定义一个名为定义一个名为CollegeMISD的数据库,该数据库的数据库,该数据库的数据文件包含在两个文件组中,主文件组中包含主数据的数据文件包含在两个文件组中,主文件组中包含主数据文件为文件为CollegeMISD_Data1和辅助数据文件为和辅助数据文件为CollegeMISD_Data2,均存放到,均存放到“D:DataAppDataD”文文件夹下。件夹下。DFGroup文件组包含辅助数据文件为文件组包含辅助数据文件为CollegeMISD_Data3和辅助数据文件为和辅助数据文件为CollegeMISD_Data4,均存放到均存放到“E:DataAppDataD”文文件夹下。主辅数据文件的初始大小为件夹下。主辅数据文件的初始大小为4MB,最多可以增长,最多可以增长到到30MB,每次增长,每次增长5%。事务日志文件为。事务日志文件为CollegeMISD_Log,存放到,存放到D:DataAppDataD文件夹下,文件夹下,文件初始大小为文件初始大小为2MB,最多可以增长到,最多可以增长到30MB,每次增长,每次增长1MB。CREATE DATABASE CollegeMISDCREATE DATABASE CollegeMISDONONPRIMARY /*PRIMARY /*默认的主文件组,存默认的主文件组,存放到放到D D盘盘* */ /(NAME=CollegeMISD_Data1, (NAME=CollegeMISD_Data1, FILENAME=D:DataAppDataDColFILENAME=D:DataAppDataDCollegeMISD_Data1.mdf,legeMISD_Data1.mdf, SIZE=4MB, SIZE=4MB, MAXSIZE=30MB, MAXSIZE=30MB, FILEGROWTH=5%), FILEGROWTH=5%),(NAME=CollegeMISD_Data2, (NAME=CollegeMISD_Data2, FILENAME=D:DataAppDataDColFILENAME=D:DataAppDataDCollegeMISD_Data2.ndf,legeMISD_Data2.ndf, SIZE=4MB, SIZE=4MB, MAXSIZE=30MB, MAXSIZE=30MB, FILEGROWTH=5%), FILEGROWTH=5%),FILEGROUP DFGROUP /*DFGroupFILEGROUP DFGROUP /*DFGroup文文件组件组, ,保存到保存到E E盘盘* */ /(NAME=CollegeMISD_Data3, (NAME=CollegeMISD_Data3, FILENAME=E:DataAppDataDCollegFILENAME=E:DataAppDataDCollegeMISD_Data3.ndf,eMISD_Data3.ndf, SIZE=4MB, SIZE=4MB, MAXSIZE=30MB, MAXSIZE=30MB, FILEGROWTH=5%), FILEGROWTH=5%),(NAME=CollegeMISD_Data4, (NAME=CollegeMISD_Data4, FILENAME=E:DataAppDataDCollegFILENAME=E:DataAppDataDCollegeMISD_Data4.ndf,eMISD_Data4.ndf, SIZE=4MB, SIZE=4MB, MAXSIZE=30MB, MAXSIZE=30MB, FILEGROWTH=5%) FILEGROWTH=5%)LOG ONLOG ON( NAME=CollegeMISD_Log, ( NAME=CollegeMISD_Log, FILENAME=D:DataAppDataDCollegFILENAME=D:DataAppDataDCollegeMISD_Log.ldf,eMISD_Log.ldf, SIZE=2, SIZE=2, MAXSIZE=30, MAXSIZE=30, FILEGROWTH=1) FILEGROWTH=1)数据库的打开与切换数据库的打开与切换可以通过企业管理器打开并切换数据库,方法是直接单击所要打开的可以通过企业管理器打开并切换数据库,方法是直接单击所要打开的数据库名即可。数据库名即可。也可在查询分析器中执行也可在查询分析器中执行USEUSE语句来打开并切换数据库,该语句的格式语句来打开并切换数据库,该语句的格式及功能如下。及功能如下。【格式格式】:USE database_nameUSE database_name【功能功能】:打开由打开由“database_namedatabase_name”作为数据库名指定的数据库,并作为数据库名指定的数据库,并使之成为默认数据库。使之成为默认数据库。例如:在查询分析器执行如下命令例如:在查询分析器执行如下命令 USE CollegeMISDUSE CollegeMISD。 4.3数据库的修改数据库的修改 在企业管理器中展开相应服务器下在企业管理器中展开相应服务器下“数据库数据库”项,然后在要查项,然后在要查看或修改的数据库(如看或修改的数据库(如CollegeMISDCollegeMISD数据库)上单击右键,在出现数据库)上单击右键,在出现的快捷菜单中选择的快捷菜单中选择“属性属性”菜单项,将会出现菜单项,将会出现 “数据库属性数据库属性”对对话框。话框。 1使用企业管理器进行数据库信息的查看与修改使用企业管理器进行数据库信息的查看与修改 【格式格式】:ALTERDATABASEdatabaseADDFILE,.nTOFILEGROUPfilegroup_name|ADDLOGFILE,.n|REMOVEFILElogical_file_name|ADDFILEGROUPfilegroup_name|REMOVEFILEGROUPfilegroup_name|MODIFYFILE|MODIFYNAME=new_dbname|MODIFYFILEGROUPfilegroup_namefilegroup_property|NAME=new_filegroup_name|SET,.nWITH【功能功能】:对由:对由“database”作为数据库名指定的数据库进行修改。作为数据库名指定的数据库进行修改。2使用使用Transact-SQL语句修改数据库语句修改数据库 2使用使用Transact-SQL语句修改数据库语句修改数据库 【例例2-5】向例向例2-4创建的创建的CollegeMISD数据库中的文数据库中的文件组件组DFGroup添加一个文件名为添加一个文件名为CollegeMISD_Data5的辅助数据文件,的辅助数据文件,并添加一个文件名为并添加一个文件名为CollegeMISD_Log1的日志文件。的日志文件。然后修改主数据文件然后修改主数据文件CollegeMISD_Data1的最大可达的最大可达到的大小为到的大小为35MB。ALTER DATABASE CollegeMISDALTER DATABASE CollegeMISD ADD FILE ADD FILE (NAME=CollegeMISD_Data5, (NAME=CollegeMISD_Data5, FILENAME=D:DataAppDataDColFILENAME=D:DataAppDataDCollegeMISD_Data5.ndf,legeMISD_Data5.ndf, SIZE=4MB, SIZE=4MB, MAXSIZE=30MB, MAXSIZE=30MB, FILEGROWTH=5% FILEGROWTH=5% ) TO FILEGROUP DFGroup ) TO FILEGROUP DFGroup GO GOALTER DATABASE CollegeMISDALTER DATABASE CollegeMISD ADD LOG FILE ADD LOG FILE( NAME=CollegeMISD_Log1,( NAME=CollegeMISD_Log1, FILENAME=D:DataAppDataDCollegFILENAME=D:DataAppDataDCollegeMISD_Log1.ldf,eMISD_Log1.ldf, SIZE=2, SIZE=2, MAXSIZE=30, MAXSIZE=30, FILEGROWTH=1 FILEGROWTH=1) ) GO GOALTER DATABASE CollegeMISDALTER DATABASE CollegeMISD MODIFY FILE MODIFY FILE ( NAME=CollegeMISD_Data1,( NAME=CollegeMISD_Data1, MAXSIZE=35 MAXSIZE=35) ) GO GO2使用使用Transact-SQL语句修改数据库语句修改数据库 【例例2-6】把例把例2-5向向CollegeMISD数据库添加的文件数据库添加的文件删除,并把数据库名改为删除,并把数据库名改为CMISD。ALTERDATABASECollegeMISDREMOVEFILECollegeMISD_Data5ALTERDATABASECollegeMISDREMOVEFILECollegeMISD_Log1GOALTERDATABASECollegeMISDMODIFYNAME=CMISDGO2.4数据库的删除数据库的删除1使用企业管理器删除数据库使用企业管理器删除数据库 在企业管理器中,展开相应服务器的数据库项,在要删除的数据在企业管理器中,展开相应服务器的数据库项,在要删除的数据库名称上单击右键,在出现的快捷菜单中选择库名称上单击右键,在出现的快捷菜单中选择“删除删除”。2使用使用Transact-SQL语句删除数据库语句删除数据库 【格式格式】:DROPDATABASEdatabase_name,.n【功能功能】:删除由:删除由database_name指定的数据库文件。指定的数据库文件。【例例2-72-7】删除数据库删除数据库CMISDCMISD。 DROP DATABASE CMISD DROP DATABASE CMISD使用使用DROP DATABASEDROP DATABASE可以一次删除多个数据库,数据库名之间用可以一次删除多个数据库,数据库名之间用“, ,”隔开。隔开。 课堂综合练习课堂综合练习1、创建一个名为、创建一个名为xscj1数据库,数据文件为数据库,数据文件为xscj_data1初始大小为初始大小为5mb,最大值为,最大值为50mb,文件增长按,文件增长按10增长,日志文件增长,日志文件xscj_log1,初始大小为,初始大小为2mb,最大值为,最大值为5mb,文件增长按,文件增长按1mb增增长。长。2、修改数据库、修改数据库xscj1数据文件属性,将主文件最大大小改为不限制,数据文件属性,将主文件最大大小改为不限制,增长方式改为每次增长方式改为每次5mb。3、为、为xscj1数据库增加数据文件数据库增加数据文件xscjbak。4、删除数据文件、删除数据文件xscjbak。5、为数据库、为数据库xscj1添加文件组添加文件组fgroup,并增加两个初始大小为并增加两个初始大小为10mb,最大值为最大值为30mb,文件增长方式为,文件增长方式为5,文件名分别是,文件名分别是xscj_data2,xscj_data3。6、从数据库删除文件组、从数据库删除文件组fgroup。7、为数据库添加日志文件、为数据库添加日志文件xscj_log2,初始大小为,初始大小为5mb,最大值为,最大值为10mb,每次增长,每次增长1mb。8、删除数据库日志文件、删除数据库日志文件xscj_log2。9、删除数据库、删除数据库xscj1。2.5数据库的收缩数据库的收缩1使用企业管理器收缩数据库使用企业管理器收缩数据库 在企业管理器中,展开相应服务器的数据库项,在要收缩的数据在企业管理器中,展开相应服务器的数据库项,在要收缩的数据库名称上单击右键,在出现的快捷菜单库名称上单击右键,在出现的快捷菜单“所有任务所有任务”中选择中选择“收收缩数据库缩数据库”。2使用使用Transact-SQL语句收缩数据库语句收缩数据库 【格式格式】:DBCCSHRINKDATABASE(,目标百分目标百分比比,NOTRUNCATE|TRUNCATEONLY)【例例2-72-7】压缩数据库压缩数据库COLLEGEMISCOLLEGEMIS的未使用空间为数据库大小的的未使用空间为数据库大小的30%30%。DBCC SHRINKDATABASE (COLLEGEMISDBCC SHRINKDATABASE (COLLEGEMIS,30)30)1)压缩整个数据库)压缩整个数据库2)压缩指定的数据文件或日志文件)压缩指定的数据文件或日志文件【格式格式】:DBCCSHRINKFILE(,目标大小目标大小,EMPTYFILE|NOTRUNCATE|TRUNCATEONLY)目标大小:指定文件压缩后的大小,以目标大小:指定文件压缩后的大小,以mb为单位;为单位;EMPTYFILE:指明此文件不再使用:指明此文件不再使用【例例2-82-8】压缩数据库压缩数据库COLLEGEMISCOLLEGEMIS的数据文件的数据文件COLLEGEMIS_data1COLLEGEMIS_data1大大小为小为3MB3MB。DBCC SHRINKFILE (COLLEGEMIS_data1DBCC SHRINKFILE (COLLEGEMIS_data1,3)3)2.6数据库的分离与附加数据库的分离与附加1分离数据库分离数据库在企业管理器中,展开相应服务器的数据库项,在要收缩的数据在企业管理器中,展开相应服务器的数据库项,在要收缩的数据库名称上单击右键,在出现的快捷菜单库名称上单击右键,在出现的快捷菜单“所有任务所有任务”中选择中选择“分分离数据库离数据库”。存在如下情况,则不能分离数据库:存在如下情况,则不能分离数据库:1.1.已复制并发布数据库。如果进行复制,则数据库必须是未发布的。已复制并发布数据库。如果进行复制,则数据库必须是未发布的。2.2.数据库中存在数据库快照。数据库中存在数据库快照。3.3.该数据库正在某个数据库镜像会话中进行镜像。该数据库正在某个数据库镜像会话中进行镜像。4.4.数据库处于可疑状态。数据库处于可疑状态。2附加数据库附加数据库在企业管理器中,展开相应服务器的数据库项,在要收缩的数据在企业管理器中,展开相应服务器的数据库项,在要收缩的数据库名称上单击右键,在出现的快捷菜单库名称上单击右键,在出现的快捷菜单“所有任务所有任务”中选择中选择“附附加数据库加数据库”。
网站客服QQ:2055934822
金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号