SQL-Server-2012数据库技术与应用02_第1页
SQL-Server-2012数据库技术与应用02_第2页
SQL-Server-2012数据库技术与应用02_第3页
SQL-Server-2012数据库技术与应用02_第4页
SQL-Server-2012数据库技术与应用02_第5页
已阅读5页,还剩33页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、第2章 数据库管理SQL Server 2012数据库技术与应用目录2.1 SQL Server数据库的结构2.2 系统数据库2.3 使用SSMS操作数据库2.4 使用T-SQL操作数据库2.1 SQL Server数据库的结构从数据库管理员的角度,SQL Server数据库的物理表现形式是数据文件,即一个数据库由一个或多个磁盘上的文件组成。这种物理表现只对数据库管理员是可见的,对用户是透明的,可称为物理数据库。从数据库用户的角度,SQL Server数据库是由存放数据的表和对这些数据进行各类操作的逻辑对象共同组成的一个集合。这种集合称为逻辑数据库,组成逻辑数据库的各种对象称为数据库对象。2.

2、1 SQL Server数据库的结构数据库文件分类:1数据库文件主数据文件,是数据库的关键文件,包含数据库的启动信息、数据库对象、其他文件的位置信息以及数据等。每个数据库必须有且仅有一个主数据文件,其扩展名为.mdf。辅助数据文件,用于存储未包含在主文件中的数据信息。使用辅助数据文件可以扩展数据库的存储空间。若数据库只有主数据文件来存储数据,则主数据文件的最大容量将受到整个磁盘空间的限制;若采用了辅助数据库文件,并将多个文件存放在不同的磁盘上,则数据库的容量不再受一个磁盘空间的限制。每个数据库可有0个或多个辅助数据文件,其扩展名为.ndf。2.1 SQL Server数据库的结构事务日志文件,

3、用来记录对数据库的所有修改操作和执行每次修改的事务,保存恢复数据库所需的事务日志信息。SQL Server遵循先写日志再执行数据库修改操作(如INSERT、UPDATE、DELETE等SQL命令)的原则,一旦发生数据库系统崩溃,数据库管理员可以通过日志文件完成数据库的修复与重建。每个数据库有一个或多个事务日志文件,其扩展名为.ldf。2.1 SQL Server数据库的结构2文件组为了扩展存储空间,在创建数据库时常将多个数据文件存放在不同的磁盘上,并把多个数据文件组成一个或多个文件组。创建数据库对象时可以指定它所在的文件组,但不能指定文件,这样当对数据库对象进行操作时,由数据库对象找到它所在的

4、文件组,再由文件组找到组中的数据文件。数据库根据组内数据文件的大小,按比例写入组内所有数据文件中,而不是将组内第一个数据文件写满后再写第二个、第三个这样可以使多个磁盘同时并行工作,大大提高了读写速度,又使组内的数据文件同时写满。2.1 SQL Server数据库的结构数据库对象 表:SQL Server最主要的数据库对象,是由行和列组成的二维表,作为存放和操作数据的一种逻辑结构。视图:从一个或多个基表中创建的虚拟表,数据库中只存放视图的定义,数据仍然存放在基表中。索引:提供加快检索数据的方式,是对数据表某些列的数据进行排序的一种结构。2.1 SQL Server数据库的结构数据库对象同义词:在

5、架构范围内为存在于本地或远程服务器上的其他数据库对象提供备用名称的一种技术手段。存储过程:一组经过预编译的SQL语句集合,用于完成特定功能。触发器:能够被某些操作激发并自动触发执行的一种特殊的存储过程。规则:用来限制表列数据范围、保障数据完整性的一种手段。默认值:在用户没有给出具体数据时,系统所自动生成的数值。约束:用来保障数据的一致性与完整性的简便方法。2.2 系统数据库系统数据库SQL Server 2012包含5个系统数据库,分别是:master、tempdb、model、masb和resource。其中,前4个数据库是可见的,可以在SSMS中的【对象资源管理器】窗口(见图2.1)【系统

6、数据库】节点中看到;resource数据库为隐藏数据库,它存在于sys框架中,无法显示在SSMS【系统数据库】节点中。2.2 系统数据库用户数据库系统数据库是在安装SQL Server 2012时由安装程序自动创建的数据库。系统数据库存放着SQL Server运行和管理其他数据库的重要信息,是SQL Server 2012管理数据库的依据。如果系统数据库遭到破坏,SQL Server将不能正常运行。2.3 使用SSMS操作数据库创建数据库创建数据库实质上就是定义数据库文件与设置数据库选项,包括确定数据库的逻辑文件名与物理文件名,规划数据库文件的容量,指定文件的增长模式,设计数据库的排序规则,选

7、择数据库的字符集,设置数据库文件的存放位置等。2.3 使用SSMS操作数据库逻辑名称:数据库的逻辑文件名。文件类型:用来标识创建的文件是存储记录(行数据)的数据文件,还是存储日常事务行为的日志文件。文件组:用来标识创建的数据库所归属的文件组名称。文件组包含所有的系统表。一个数据库文件只能存在于一个文件组中。日志文件不允许属于任何文件组。初始大小:用来设置空数据库文件的初始空间大小值(单位默认为MB)。刚创建的数据库只有系统表,而不存在用户数据库对象,因此初始文件大小可以比较小。以后随着数据库量增长,可以自动扩展数据库的空间大小。2.3 使用SSMS操作数据库 自动增长:当数据库文件在超过其初始

8、空间大小时,该项可用以启动文件大小的自动增长功能,可设置具体的增长方式。 路径:数据库物理文件所存放的位置。默认情况下为SQL Server安装目录下的某个特定子目录。可以通过其右侧的 按钮来指定文件的存储路径。文件名:数据库物理文件的名称。该名称一般由系统根据逻辑名称按内部规则设定,也可以通过输入改变默认名称。2.3 使用SSMS操作数据库【任务2.1】 创建一个名为Manage的数据库,该数据库包含一个主数据库文件、一个事务日志文件,所有文件都存储在C:Program FilesMicrosoft SQL Serverdata文件夹下。其中,主数据库文件初始大小为5MB,按照10%的容量增

9、长,大小无限制。日志文件初始大小为1MB,每次增长1MB,文件最大容量为100MB。2.3 使用SSMS操作数据库【任务2.2】 为Manage数据库添加一个辅助数据文件Mange_DB1,将其初始大小设置为5,自动增加10%,最大空间设置为20MB。2.3 使用SSMS操作数据库1分离数据库分离数据库就是将数据库从SQL Server实例中卸载,但组成该数据库的数据文件和事务日志文件依然完好无损地保存在磁盘上。通过分离得到的数据库,可以重新附加到SQL Server实例上。在对数据库进行分离之前,要确保没有任何用户登录到该数据库上。2.3 使用SSMS操作数据库【任务2.3】 将创建好的Ma

10、nage的数据库从服务器上进行分离。2.3 使用SSMS操作数据库【任务2.4】 将被分离的Manage的数据库重新附加到SQL Server服务器上。2.3 使用SSMS操作数据库【任务2.5】 删除系统中的Manage数据库。2.4 使用T-SQL操作数据库CREATE DATABASE语句用来创建指定的数据库,该语句的基本语法格式如下:CREATE DATABASE数据库名ON PRIMARY (NAME=数据文件的逻辑名称,FILENAME= 数据文件的物理名称 ,SIZE=数据文件的初始大小,MAXSIZE=数据文件的最大容量,FILEGROWTH=数据文件的增长量) ,nLOG O

11、N(NAME=事务日志文件的逻辑名称,FILENAME = 事务日志文件的物理名称,SIZE=事务日志文件的初始大小,MAXSIZE=事务日志文件的最大容量 ,FILEGROWTH =事务日志文件的增长量) ,nCOLLATE数据库的排序方式FOR ATTACH | ATTACH_REBUILD_LOG;2.4 使用T-SQL操作数据库语法说明如下。(1)ON关键字表示数据库是根据后面的参数来创建的,LOG ON子句用于指定该数据库的事务日志文件。每个文件定义包含NAME、FILENAME、SIZE、MAXSIZE和FILEGROWTH五个参数,需用括号括起来,若存在多个文件,文件定义用逗号分

12、隔。(2)PRIMARY关键字指定将后面定义的数据文件加入主文件组中,也可加入用户自创建的文件组中。(3)NAME关键字用来指定数据库文件的逻辑名。2.4 使用T-SQL操作数据库(4)FILENAME关键字用来指定数据库文件的物理名,需要指明文件路径及带后缀的全名,用单引号引起来。(5)SIZE关键字用于指定文件的初始大小,默认单位为MB,也可定义为其他单位(如KB、GB或TB)。数据文件初始大小为3MB,日志文件初始大小为1MB。(6)MAXSIZE关键字用于指定文件的最大容量,单位与SIZE参数单位相同。若文件大小不受限制,表示文件可不断增长,直到磁盘空间完全被使用,此时可省略该参数,或

13、将参数值设置为UNLIMITED。2.4 使用T-SQL操作数据库(7)FILEGROWTH关键字用于指定数据库文件的增加量,增量采用固定大小和按比例增长两种方式,可加MB等单位或%,默认单位为MB。(8)COLLATE关键字引导的子句用来指定数据库的默认排序方式。COLLATE子句不出现时,数据库将依照SQL Server的model系统数据库的设置来定义数据库的默认排序方式。2.4 使用T-SQL操作数据库(9)FOR ATTACH | ATTACH_REBUILD_LOG子句用来指定以何种附加方式向新建数据库中添加初始数据。FOR ATTACH选项将依据已有的数据文件来创建新的数据库,此

14、时新建数据库必须保证主文件已经被指定。FOR ATTACH_REBUILD_LOG选项则依据日志文件的事务记录来创建新的数据库。(10)若省略所有的选项,则数据库创建时会根据model系统数据库的默认设置来自动设定各属性参数。当用户不需对新建数据库的各种特性进行较多控制时,可以采用最简化的数据库创建方式,即语句CREATE DATABASE数据库名。2.4 使用T-SQL操作数据库【任务2.6】 创建一个名为Manage的数据库,该数据库包含一个主数据库文件、一个事务日志文件,所有文件都存储在D:data文件夹下。其中,主数据库文件初始大小为5MB,按照10%的容量增长,大小无限制;日志文件初

15、始大小为1MB,每次增长1MB,文件最大容量为100MB。2.4 使用T-SQL操作数据库USE语句的基本语法格式如下。USE数据库名;2.4 使用T-SQL操作数据库【任务2.7】 将当前数据库切换为Manage数据库。2.4 使用T-SQL操作数据库ALTER DATABASE语句的基本语法格式如下:ALTER DATABASE数据库名 ADD FILE TO FILEGROUP文件组| ADD LOG FILE | REMOVE FILE逻辑文件名| ADD FILEGROUP文件组名| REMOVE FILEGROUP文件组名| MODIFY FILE | MODIFY FILEGRO

16、UP文件组名,文件组属性| MODIFY NAME=数据库新名称| SET数据库功能选项,n WITH终止符| COLLATE数据库的排序方式;2.4 使用T-SQL操作数据库语法说明如下:(1)在上述语法格式中,“|”表示几项中仅选一项。(2)ADD FILE与ADD LOG FILE子句分别用来向数据库中添加数据文件与日志文件,文件的属性定义见CREATE DATABASE。TO FILEGROUP子句指定将文件添加到哪个文件组,默认为主文件组PRIMARY。(3)REMOVE FILE子句用于从数据库中删除一个数据文件。(4)ADD FILEGROUP和REMOVE FILEGROUP子

17、句分别指定添加和删除一个数据库文件组。2.4 使用T-SQL操作数据库(5)MODIFY FILE子句用于修改数据库文件的初始大小、文件最大容量及文件增长量等信息。注意:数据库文件的物理文件名称不允许修改,因此FILENAME子句不允许出现在文件修改中。另外,在修改文件的“分配的空间”项时,所改动的值必须大于现有的空间值。(6)MODIFY FILEGROUP子句用于修改文件组属性。(7)MODIFY NAME子句用于改变数据库的逻辑名称。2.4 使用T-SQL操作数据库注意:要对数据库改名必须先将数据库改为排他锁锁定状态,即断开所有其他连接,以执行该操作。(8)SET关键字引导的子句用来设置某些数据库功能选项,这些选项将影响数据库的某些特征或属性。(9)COLLATE关键字引导的子句用来为数据库指定排序规则。2.4 使用T-SQL操作数据库【任务2.8】 编写T-SQL代码,为Manage数据库添加一个新文件组newfilegroup,并在其中添加一个辅助数据文件Manage_add.ndf,将其保存在与主数据文件相同的目录下,初始大小3MB,最大值不受限制,每次增长10MB。2.4 使用T-SQL操作数据库T-SQL提供了DROP DATABASE命令来删除数据库,该语句的基本语法格式如下。DROP DATABASE数据库名;2.4 使用T-SQL操作数据库【任务2.9】

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论