




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、2021-10-1412.1 SQL Server数据库基本概念数据库基本概念2.2 界面方式创建数据库界面方式创建数据库2.3 命令方式创建数据库命令方式创建数据库2021-10-142nSQL Server数据库是保存和操作数据的集合。数据库是保存和操作数据的集合。l 是许多对象(表、视图、存储过程和约束)的集合是许多对象(表、视图、存储过程和约束)的集合l 维护自己的用户帐户、角色、架构和安全集合维护自己的用户帐户、角色、架构和安全集合l 有自己的系统表集合,用于保存数据库目录有自己的系统表集合,用于保存数据库目录l 是恢复的主要单元,而且维护其中对象之间的逻辑一致性是恢复的主要单元,而
2、且维护其中对象之间的逻辑一致性l 有自己的事务日志,并管理自己的事务有自己的事务日志,并管理自己的事务l 能够跨多个磁盘驱动器和操作系统文件能够跨多个磁盘驱动器和操作系统文件l 其对象可以和来自同一其对象可以和来自同一SQL Server实例或链接服务器上实例或链接服务器上其他数据库中的对象进行联合查询其他数据库中的对象进行联合查询2021-10-143 2.1.1 逻辑数据库逻辑数据库 SQL Server数据库是存储数据的容器数据库是存储数据的容器,是一个存放数据,是一个存放数据的表和支持这些数据的存储、检索、安全性和完整性的逻的表和支持这些数据的存储、检索、安全性和完整性的逻辑成分所组成
3、的集合。辑成分所组成的集合。 用户观点将数据库称为逻辑数据库,组成数据库的逻用户观点将数据库称为逻辑数据库,组成数据库的逻辑成分称为数据库对象。辑成分称为数据库对象。 SQL Server 2008的的数据库对象主要包括表、视图、索引、数据库对象主要包括表、视图、索引、存储过程、触发器和约束等。存储过程、触发器和约束等。2021-10-144l 数据库中对象的表示数据库中对象的表示(1)完全限定完全限定名名在在SQL Server 2008中中,完全限定名是对象的全名,包括四个部分:服,完全限定名是对象的全名,包括四个部分:服务器名、数据库名、务器名、数据库名、数据库架构名数据库架构名和对象名
4、,其格式为和对象名,其格式为:server.database.scheme.object 在在SQL Server 2008上上创建的每个对象都必须有一个唯一的完全限定名创建的每个对象都必须有一个唯一的完全限定名。 每个对象都属于一个数据库架构。数据库架构是一个独立于数据库用每个对象都属于一个数据库架构。数据库架构是一个独立于数据库用户的非重复命名的空间。户的非重复命名的空间。2021-10-145(2)部分限定部分限定名名n 在使用在使用T-SQL编程时,使用全名往往很烦琐且没有必要,编程时,使用全名往往很烦琐且没有必要,所以常省略全名中的某些部分,对象全名的四个部分中所以常省略全名中的某些
5、部分,对象全名的四个部分中的前三个部分均可以被省略,的前三个部分均可以被省略,当省略中间的部分时,圆当省略中间的部分时,圆点符点符“.”不可省略不可省略。n 把只包含对象完全限定名中的一部分的对象名称为部分把只包含对象完全限定名中的一部分的对象名称为部分限定名。限定名。n 当用户使用对象的部分限定名时,当用户使用对象的部分限定名时,SQL Server可以根据系可以根据系统的当前工作环境确定对象名称中省略的部分。统的当前工作环境确定对象名称中省略的部分。2021-10-146(2)部分限定名)部分限定名在部分限定名中,未指出的部分使用以下默认值:在部分限定名中,未指出的部分使用以下默认值:服务
6、器:默认为本地服务器。服务器:默认为本地服务器。数据库:默认为当前数据库。数据库:默认为当前数据库。数据库架构名:默认为数据库架构名:默认为dbo。例如,以下是一些正确的对象部分限定名:例如,以下是一些正确的对象部分限定名:server.database.object /*省略架构名*/server. scheme.object /*省略数据库名*/database. scheme.object /*省略服务器名*/serverobject /*省略架构名和数据库名*/scheme.object /*省略服务器名和数据库名*/object /*省略服务器名、数据库名和架构名*/2021-10-
7、147l SQL Server 2008中中所包含的常用的所包含的常用的数据库对象数据库对象l 表表:“表表”是是SQL Server中最主要的数据库对象,它是中最主要的数据库对象,它是用来存储和操作数据的一种逻辑结构。用来存储和操作数据的一种逻辑结构。“表表”由行和列由行和列组成,因此也称之为二维表。组成,因此也称之为二维表。l 视图视图:视图是从一个或多个基本表中引出的表,数据:视图是从一个或多个基本表中引出的表,数据库中库中只存放视图的定义只存放视图的定义而不存放视图对应的数据,这些而不存放视图对应的数据,这些数据仍存放在导出视图的基本表中。数据仍存放在导出视图的基本表中。2021-10
8、-148l索引索引 索引索引是一种不用扫描整个数据表就可以对表中的数据实现快速访问的是一种不用扫描整个数据表就可以对表中的数据实现快速访问的途径,它是对数据表中的一列或者多列的数据进行排序的一种结构。途径,它是对数据表中的一列或者多列的数据进行排序的一种结构。表中的记录通常按其输入的时间顺序存放,这种顺序称为记录的表中的记录通常按其输入的时间顺序存放,这种顺序称为记录的物物理顺序理顺序。为了为了实现对表记录的快速查询,可以对表的记录按某个和某些属性实现对表记录的快速查询,可以对表的记录按某个和某些属性进行排序,这种顺序称为进行排序,这种顺序称为逻辑顺序逻辑顺序。2021-10-149l 约束约
9、束 约束约束机制保障了机制保障了SQL Server 2008中中数据的一致性与完整性,具数据的一致性与完整性,具有代表性的有代表性的约束有约束有主主键和外键和外键键,用户自定义约束。,用户自定义约束。 主主键约束当前表记录的唯一性,外键约束当前表记录与其它表键约束当前表记录的唯一性,外键约束当前表记录与其它表的关系。的关系。2021-10-1410l 存储存储过程过程 存储存储过程是一组为了完成特定功能的过程是一组为了完成特定功能的SQL语句集合。这个语句集语句集合。这个语句集合经过编译后存储在数据库中,存储过程具有合经过编译后存储在数据库中,存储过程具有接受参数、输出参接受参数、输出参数数
10、,返回单个或多个结果以及返回值的功能,返回单个或多个结果以及返回值的功能。 存储存储过程独立于表存在过程独立于表存在。 存储存储过程有和函数类似的地方,但它又不同于函数。例如,它不过程有和函数类似的地方,但它又不同于函数。例如,它不返回取代其名称的值,也不能直接在表达式中使用返回取代其名称的值,也不能直接在表达式中使用。2021-10-1411l 触发器触发器 触发器触发器与表紧密关联与表紧密关联。 它它可以实现更加复杂的数据操作,更加有效地保障数据库可以实现更加复杂的数据操作,更加有效地保障数据库系统中数据的完整性和一致性系统中数据的完整性和一致性。 触发器触发器基于一个表创建,但可以对多个
11、表进行操作。基于一个表创建,但可以对多个表进行操作。2021-10-1412l默认值默认值:默认值是在用户没有给出具体数据时,系统所自动生成的:默认值是在用户没有给出具体数据时,系统所自动生成的数值。它是数值。它是SQL Server 2008系统系统确保数据一致性和完整性的方法。确保数据一致性和完整性的方法。l用户和角色用户和角色:用户是对数据库有存取权限的使用者;角色是指一组:用户是对数据库有存取权限的使用者;角色是指一组数据库用户的集合。这两个概念类似于数据库用户的集合。这两个概念类似于Windows XP的本地用户和组的概的本地用户和组的概念。念。l规则规则:规则用来限制表字段的数据范
12、围。:规则用来限制表字段的数据范围。l类型类型:用户可以根据需要在给定的系统类型之上定义自己的数据类:用户可以根据需要在给定的系统类型之上定义自己的数据类型。型。l函数函数:用户可以根据需要在:用户可以根据需要在SQL Server 2008上上定义自己的函数。定义自己的函数。2.1.2 物理数据库物理数据库l 数据库的物理存储结构是讨论数据库文件是如何数据库的物理存储结构是讨论数据库文件是如何在磁盘上存储的在磁盘上存储的l 数据库在磁盘上是以文件为单位存储的,由数据库在磁盘上是以文件为单位存储的,由数据数据库文件和事务日志文件库文件和事务日志文件组成,一个数据库至少应组成,一个数据库至少应该
13、包含一个数据库文件和一个事务日志文件。该包含一个数据库文件和一个事务日志文件。2021-10-14132021-10-14141页和区页和区 SQL Server 2008中有两个主要的数据存储单位:页和区。中有两个主要的数据存储单位:页和区。 页是页是SQL Server 2008中用于数据存储的最基本单位。中用于数据存储的最基本单位。每每个页的大小是个页的大小是8 KB,也就是说,也就是说,SQL Server 2008中每中每1 MB的数据文件可以容纳的数据文件可以容纳128页页。 页页的开头是的开头是96 B的标头,用于存储有关页的系统信息。的标头,用于存储有关页的系统信息。紧接着标头
14、存放的是数据行,数据行按顺序排列紧接着标头存放的是数据行,数据行按顺序排列。2021-10-14151页和区页和区 数据库数据库表中的每一行数据都不能跨页存储,表中的每一行数据都不能跨页存储,即表中的每即表中的每一行数据字节数不能超过一行数据字节数不能超过8192。 在每一个页上,由于系统占用了一部分空间用于记录与在每一个页上,由于系统占用了一部分空间用于记录与该页有关的系统信息(该页有关的系统信息(页面头页面头132个字节),所以每一个字节),所以每一个页可用的空间是个页可用的空间是8060个字节。个字节。 页页的末尾是行偏移表,页中的每一行在偏移表中都有一的末尾是行偏移表,页中的每一行在偏
15、移表中都有一个对应的条目。每个条目记录着对应行的第一个字节与个对应的条目。每个条目记录着对应行的第一个字节与页首部的距离页首部的距离。2021-10-1416b1页和区页和区 区(区(Extent)是)是用于管理空间的基本单位用于管理空间的基本单位。 每每8个连接的页组成一个区,大小为个连接的页组成一个区,大小为64 KB,即,即每每1 MB的数据库就有的数据库就有16个区个区。 区区用于控制表和索引的存储。用于控制表和索引的存储。数据存储方式Extent (8 continuous 8-KB pages)Page (8 KB)Tables, IndexesDataDatabaseData (
16、file).MDF or .NDFLog (file).LDFMaximum row size = 8060 bytes 2021-10-1418b 2数据库文件数据库文件SQL Server 2008所使用的文件包括以下三类文件。所使用的文件包括以下三类文件。(1)主数据文件主数据文件。主数据文件简称主文件。主数据文件简称主文件,该,该文件是数文件是数据库的关键文件,包含了数据库的启动信息,并且存储数据。据库的关键文件,包含了数据库的启动信息,并且存储数据。每个数据库必须有且仅能有一个主文件,其默认扩展名为每个数据库必须有且仅能有一个主文件,其默认扩展名为.mdf。2021-10-1419(
17、2)辅助数据)辅助数据文件文件 辅助辅助数据文件简称辅(助)文件,用于存储数据文件简称辅(助)文件,用于存储未包括在主未包括在主文件内的其他数据文件内的其他数据。辅助文件的默认扩展名为。辅助文件的默认扩展名为.ndf。 辅助辅助文件是可选的,根据具体情况,可以创建多个辅助文件是可选的,根据具体情况,可以创建多个辅助文件,也可以不使用辅助文件文件,也可以不使用辅助文件。 一般一般当数据库很大时,有可能需要创建多个辅助文件。当数据库很大时,有可能需要创建多个辅助文件。而当数据库较小时,则只需要创建主文件而不需要创建而当数据库较小时,则只需要创建主文件而不需要创建辅助文件辅助文件。2021-10-1
18、420(3)日志文件日志文件 日志文件日志文件用于保存恢复数据库所需的事务日志信息用于保存恢复数据库所需的事务日志信息。 每个每个数据库至少有一个日志文件,也可以有多个,日数据库至少有一个日志文件,也可以有多个,日志文件的扩展名为志文件的扩展名为.ldf。 日志文件日志文件的存储与数据文件不同,它包含一系列记录,的存储与数据文件不同,它包含一系列记录,这些记录的存储不以页为存储单位这些记录的存储不以页为存储单位。 Data modification is sent by applicationDiskModification is recorded in transaction log on
19、diskData pages are located in, or read into, buffer cache and modifiedBuffer CacheDiskCheckpoint writes committed transactionsto database 日志工作原理日志工作原理2021-10-1422h 3文件组文件组文件组是由多个文件组成,为了管理和分配数据而将它文件组是由多个文件组成,为了管理和分配数据而将它们组织在一起。通常可以为一个磁盘驱动器创建一个文件组,们组织在一起。通常可以为一个磁盘驱动器创建一个文件组,然后将特定的表、索引等与该文件组相关联,那么对这些表然
20、后将特定的表、索引等与该文件组相关联,那么对这些表的存储、查询和修改等操作都在该文件组中。的存储、查询和修改等操作都在该文件组中。使用文件组可以提高表中数据的查询性能。使用文件组可以提高表中数据的查询性能。2021-10-1423b 3文件组文件组(1)主文件组主文件组。主文件组包含主要数据文件和任何没有明。主文件组包含主要数据文件和任何没有明确指派给其他文件组的其他文件。管理数据库的系统表的所有确指派给其他文件组的其他文件。管理数据库的系统表的所有页均分配在主文件组中。页均分配在主文件组中。(2)用户定义文件组用户定义文件组。用户定义文件组是指在。用户定义文件组是指在CREATE DATAB
21、ASE或或ALTER DATABASE语句中使用语句中使用FILEGROUP关键字指定关键字指定的文件组的文件组。2021-10-1424l 每个每个数据库中都有一个文件组作为默认文件组运行数据库中都有一个文件组作为默认文件组运行。l 若若在在SQL Server 2008中创建表或索引时没有为其指定文中创建表或索引时没有为其指定文件组,那么将从默认文件组中进行存储页分配、查询件组,那么将从默认文件组中进行存储页分配、查询等操作等操作。l 用户用户可以指定默认文件组,如果没有指定默认文件组,可以指定默认文件组,如果没有指定默认文件组,则主文件组是默认文件组则主文件组是默认文件组。利用文件组和利
22、用文件组和RAID提高性能提高性能FilegroupFileEFileFFileGFileHFileAFileBFileCFileDTransaction LogTransaction LogOperating System2021-10-1426l 在在SQL Server2008中,文件组对组内的所有文件都使中,文件组对组内的所有文件都使用用按比例填充按比例填充策略;策略;l 当数据写入文件组时,当数据写入文件组时, SQL Server数据库引擎文件中数据库引擎文件中的可用空间比例将的可用空间比例将 数据写入文件组中的每个文件,而数据写入文件组中的每个文件,而不是将所有数据都写入一不是将
23、所有数据都写入一 个文件直到满为止,然后再个文件直到满为止,然后再写入下一个文件。写入下一个文件。2021-10-1427n主文件主文件总是在创建数据库时第一个列出的文件,通常文件总是在创建数据库时第一个列出的文件,通常文件扩展名为扩展名为.mdf。主文件的一个特殊功能是它具有指向。主文件的一个特殊功能是它具有指向master数据库中表的指针,数据库中表的指针,master数据库包含关于所有数据库包含关于所有属于该数据库的文件的信息。属于该数据库的文件的信息。n主文件组主文件组总是包含主文件的文件组,这个文件组包含主数总是包含主文件的文件组,这个文件组包含主数据文件和没有放到其他特定文件组中的
24、所有文件。系统表据文件和没有放到其他特定文件组中的所有文件。系统表中的所有页面总是由主要文件组中的文件分配的。中的所有页面总是由主要文件组中的文件分配的。2021-10-1428l 系统数据库存储有关系统数据库存储有关SQL Server的系统信息,它的系统信息,它们是们是SQL Server 2008管理数据库的依据管理数据库的依据。l 如果如果系统数据库遭到破坏,那么系统数据库遭到破坏,那么SQL Server将不将不能正常启动能正常启动。l 在在安装安装SQL Server 2008时,系统将创建时,系统将创建4个可见个可见的系统数据库:的系统数据库:master、model、msdb和
25、和tempdb。2021-10-1429(1)master数据库数据库包括系统表,系统表记录整个服务器安装和在这之后创建的包括系统表,系统表记录整个服务器安装和在这之后创建的所有其他数据库。所有其他数据库。包含包含了了SQL Server 2008的登录账号、系统配置、数据库位置及的登录账号、系统配置、数据库位置及数据库错误信息等,控制用户数据库和数据库错误信息等,控制用户数据库和SQL Server的运行的运行。2021-10-1430(2)model数据库数据库为新创建的数据库提供模板。为新创建的数据库提供模板。在创建在创建的的数据库时,数据库时, SQL Server会自动复制会自动复制
26、model数据库。数据库。 model 数据库包括数据库包括 53个对象:个对象:45个系统表、个系统表、6个用于个用于SQL Server 查询通知和查询通知和Service Broker的对象、的对象、1个用于帮助管理文件流数据个用于帮助管理文件流数据的表和的表和1个帮助管理变更跟踪的表。个帮助管理变更跟踪的表。2021-10-1431(3)msdb数据库数据库为为“SQL Server代理代理”调度信息和作业记录提调度信息和作业记录提供存储空间。供存储空间。(4)tempdb数据库数据库为临时表和临时存储过程提供存储空间,所为临时表和临时存储过程提供存储空间,所有与系统连接的用户的临时表
27、和临时存储过程都存储于该有与系统连接的用户的临时表和临时存储过程都存储于该数据库中。数据库中。每次重新启动每次重新启动SQL Server时,都会时,都会重建重建而不恢复它。而不恢复它。每个每个系统数据库都包含主数据文件和主日志文件。扩展名分别系统数据库都包含主数据文件和主日志文件。扩展名分别为为.MDF 和和.LDF。2021-10-1432b 2.2.1 数据库的创建数据库的创建创建数据库必须确定:创建数据库必须确定:l 数据库名数据库名l 所有者所有者l 数据库的大小数据库的大小l 存储数据库的文件存储数据库的文件2021-10-1433b 2.2.1 数据库的创建数据库的创建使用SQL
28、 Server Management Studio窗口图形化向导创建学生成绩管理系统的数据库(名为PXSCJ)。【例例2.1】 创建数据库PXSCJ,数据文件和日志文件的属性按默认值设置。创建该数据库的主要过程如下。创建该数据库的主要过程如下。第1步:以系统管理员身份登录计算机,在桌面上单击“开始所有程序Microsoft SQL Server 2008”,选择并启动SQL Server Management Studio。如图2.1所示,使用默认的系统配置连接到数据库服务器。使用默认的系统配置连接到数据库服务器。2021-10-1434 服务器类型 身份验证模式 图2.1 连接到服务器202
29、1-10-1435第2步:选择“对象资源管理器”中服务器目录下的“数据库”目录,右击鼠标,在弹出的快捷菜单中选择“新建数据库”菜单项,打开“新建数据库”窗口。 第3步:“新建数据库”窗口的左上方共有三个选项卡“常规”、“选项”和“文件组”,这里只配置“常规”选项卡,其他选项卡使用系统默认设置。在“新建数据库”窗口的左上方选择“常规”选项卡,在“数据库名称”文本框中填写要创建的数据库名称“PXSCJ”,也可以在“所有者”文本框中指定数据库的所有者,如sa。这里使用默认值,其他属性也按默认值设置,如图2.2所示。 在此输入数据库名 逻辑文件名可以直接修改 此处设置文件路径 图2.2 新建数据库属性
30、2021-10-1436另外,可以通过单击自动增长标签栏下面的另外,可以通过单击自动增长标签栏下面的 按钮,弹出图按钮,弹出图2.3所示的对话框,所示的对话框,在该对话框中可以设置数据库是否自动增长、增长方式、数据库文件最大文件大小。在该对话框中可以设置数据库是否自动增长、增长方式、数据库文件最大文件大小。数据日志文件的自动增长设置对话框与数据文件的类似数据日志文件的自动增长设置对话框与数据文件的类似。图2.3 自动增长设置2021-10-1437配置路径的方式与配置自动增长方式类似,可以通过单击路径标签栏下面的配置路径的方式与配置自动增长方式类似,可以通过单击路径标签栏下面的 按按钮来自定义
31、路径,默认路径为钮来自定义路径,默认路径为C:Program FilesMicrosoft SQL ServerMSSQL10.SQL2008 MSSQLDATA。这里,数据库文件大小、增长方式和路径。这里,数据库文件大小、增长方式和路径都使用默认值,确认后单击都使用默认值,确认后单击“确定确定”按钮。按钮。 可可以在对象资源管理器的以在对象资源管理器的“数据库数据库”目目录下找到该数据库所对应的图标,如图录下找到该数据库所对应的图标,如图2.4所示所示。图图2.4 创建后的创建后的PXSCJ数据库数据库2021-10-1438b 1. 1. 数据库的修改数据库的修改在数据库成功创建后,数据文
32、件名和日志文件名就不能改在数据库成功创建后,数据文件名和日志文件名就不能改变了。对已存在的数据库可以进行的修改包括以下几项。变了。对已存在的数据库可以进行的修改包括以下几项。l 增加或删除数据文件。增加或删除数据文件。l 改变数据文件的大小和增长方式。改变数据文件的大小和增长方式。l 改变日志文件的大小和增长方式。改变日志文件的大小和增长方式。l 增加或删除日志文件。增加或删除日志文件。l 增加或删除文件组。增加或删除文件组。l 重命名数据库重命名数据库。2021-10-1439第第1步:选择需要进行修改的数据库步:选择需要进行修改的数据库PXSCJ,右击鼠标,在出现的快捷菜单中选,右击鼠标,
33、在出现的快捷菜单中选择择“属性属性”菜单项,如图菜单项,如图2.5所示所示。图2.5 选择“属性”菜单项2021-10-1440第第2步:选择步:选择“属性属性”菜单项后,出现如图菜单项后,出现如图2.6所示的所示的“数据库属性数据库属性-PXSCJ”窗窗口。从图中的选项卡列表中可以看出,它包括口。从图中的选项卡列表中可以看出,它包括9个选项卡个选项卡。图2.6 “数据库属性-PXSCJ”窗口2021-10-1441(1)改变数据文件的大小和增长方式。)改变数据文件的大小和增长方式。在图2.6所示的“数据库属性-PXSCJ”窗口中的选项卡列表中选择“文件”,在右边的“初始大小”列中输入要修改的
34、数据库的初始大小,如图2.7所示。图2.7 修改数据库的大小修改数据库的初始大小2021-10-1442(2)增加或删除数据文)增加或删除数据文件件当当原有数据库的存储空间不够大时,除了可以采用扩大原原有数据库的存储空间不够大时,除了可以采用扩大原有数据文件存储量的方法之外,还可以增加新的数据文件有数据文件存储量的方法之外,还可以增加新的数据文件。或或者,从系统管理的需求出发,采用多个数据文件来存储者,从系统管理的需求出发,采用多个数据文件来存储数据,以避免数据文件过大。此时,会用到向数据库中增加数数据,以避免数据文件过大。此时,会用到向数据库中增加数据文件的操作据文件的操作。2021-10-
35、1443【例例2.2】 在在PXSCJ数据库中增加数据文件数据库中增加数据文件PXSCJ_2,其属性均取系统默认值。,其属性均取系统默认值。打打开开“数据库属性数据库属性-PXSCJ”窗口,在选项卡列表中选择窗口,在选项卡列表中选择“文件文件”,单击窗口右,单击窗口右下角的下角的“添加添加”按钮,数据库文件下方会新增加一行文件项,如图按钮,数据库文件下方会新增加一行文件项,如图2.8所示所示。图2.8 增加数据文件2021-10-14删除辅助数据文删除辅助数据文件件打开“数据库属性”窗口,选择“文件”选项卡。选中需删除的辅助数据文件PXSCJ_2,单击对话框右下角的“删除”按钮,然后单击“确定
36、”按钮即完成删除。(3)增加或删除文件组)增加或删除文件组。数据库管理员(DBA)从系统管理策略角度出发,有时可能需要增加或删除文件组。2021-10-1445【例例2.3】 假设要在数据库假设要在数据库PXSCJ中增加一个名为中增加一个名为FGroup的文件组。的文件组。打打开开“数据库属性数据库属性”窗口,选择窗口,选择“文件组文件组”选项卡。单击右下角的选项卡。单击右下角的“添加添加”按按钮,这时在钮,这时在PRIMARY行的下面会出现新的一行。在该行的行的下面会出现新的一行。在该行的“名称名称”列输入列输入“FGroup”,单击,单击“确定确定”按钮,如图按钮,如图2.9所示所示。图2
37、.9 输入新增的文件组名在此输入新增的文件组名2021-10-1446l 例如,在例如,在PXSCJ数据库新增的文件组数据库新增的文件组FGroup中增加数据文件中增加数据文件PXSCJ2。选择选择“文件文件”选项卡,按增加数据文件的操作方法添加数据文件。在选项卡,按增加数据文件的操作方法添加数据文件。在“文件组文件组”下拉框中选择下拉框中选择“FGroup”,如图,如图2.10所示,单击所示,单击“确定确定”按钮按钮。选择文件组图2.10 将数据文件加入新增的文件组中2021-10-1447l删除文件删除文件组组选择选择“文件组文件组”选项卡。选中需删除的文件组,单击对话框右下角的选项卡。选
38、中需删除的文件组,单击对话框右下角的“删除删除”按钮,再单击按钮,再单击“确定确定”按钮即可删除。按钮即可删除。(4)数据库的重命)数据库的重命名名使用使用图形界面修改数据库名称的方法是:启动图形界面修改数据库名称的方法是:启动“SQL Server Management Studio”,在,在“对象资源管理器对象资源管理器”窗口中,展开窗口中,展开“数据库数据库”,选择要重命名的,选择要重命名的数据库,右击鼠标,在弹出的快捷菜单中选择数据库,右击鼠标,在弹出的快捷菜单中选择“重命名重命名”菜单项,输入新的数菜单项,输入新的数据库名称,即可更改数据库的名称据库名称,即可更改数据库的名称。在在一
39、般情况下,不建议用户更改已经创建好的数据库名称,因为许多应用一般情况下,不建议用户更改已经创建好的数据库名称,因为许多应用程序可能已经使用了该名称,在更改了数据库名称之后,还需要修改相应的应程序可能已经使用了该名称,在更改了数据库名称之后,还需要修改相应的应用程序。用程序。2021-10-1448b 2. 删除数据库删除数据库通常的做法是,把一些不需要的数据库删除,以释放被其占用的系统空间和消耗。用户可以利用图形向导方式轻松地完成数据库系统的删除工作。【例例2.4】 删除PXSCJ数据库。启动SQL Server Management Studio,在对象资源管理器中选择要删除的数据库“PXS
40、CJ”,右击鼠标,在弹出的快捷菜单中选择“删除”菜单项,打开如图2.11所示的“删除对象”对话框,单击右下角的“确定”按钮,即可删除数据库PXSCJ。单击“确定”按钮图2.11 “删除对象”对话框2021-10-14492.3.1 创建数据库创建数据库命令方式创建数据库使用CREATE DATABASE命令,创建前要确保用户具有创建数据库的权限。语法格式。在对语法格式进行解释之前,先介绍本书的Transact-SQL语法格式中使用的约定。表2.1列出了这些约定,并进行了说明。这些约定在本书介绍T-SQL语法格式时都适用。约 定用 途UPPERCASE(大写)Transact-SQL 关键字|分
41、隔括号或大括号中的语法项。只能选择其中一项 可选语法项。不要输入方括号 必选语法项。不要输入大括号,.n指示前面的项可以重复 n 次。每一项由逗号分隔 .n指示前面的项可以重复 n 次。每一项由空格分隔;可选的 Transact-SQL 语句终止符。不要输入方括号 :=语法块的名称。此约定用于对可在语句中多个位置使用的过长语法段或语法单元进行分组和标记。可使用的语法块的每个位置由括在尖括号内的标签指示:表2.1 本书Transact-SQL语法的约定和说明2021-10-1450CREATE DATABASE database_name ON PRIMARY ,.n , ,.n LOG ON
42、,.n COLLATE collation_name WITH FOR ATTACH | ATTACH_REBUILD_LOG ;语法语法格式格式:2021-10-1451 := ( NAME = logical_file_name , FILENAME = os_file_name | filestream_path , SIZE = size KB | MB | GB | TB , MAXSIZE = max_size KB | MB | GB | TB | UNLIMITED , FILEGROWTH = growth_increment KB | MB | GB | TB | % )
43、,.n := FILEGROUP filegroup_name CONTAINS FILESTREAM DEFAULT ,.n := DB_CHAINING ON | OFF , TRUSTWORTHY ON | OFF 2021-10-1452l (1)database_name 所所创建的数据库逻辑名称创建的数据库逻辑名称,该名称在,该名称在SQL Server实例中必须唯一。其命名实例中必须唯一。其命名须遵循须遵循SQL Server 2008的命名规则,最大长度为的命名规则,最大长度为128个字符。个字符。l (2)ON子句子句 指定指定了数据库的数据文件和文件组,其中,了数据库的数据
44、文件和文件组,其中,PRIMARY用来指定主文件用来指定主文件。若。若不指定主文件,则各数据文件中的第一个文件将成为主文件不指定主文件,则各数据文件中的第一个文件将成为主文件。2021-10-1453l (3) 指定指定数据库文件的属性,主要给出文件的逻辑名、存储路径、大小及数据库文件的属性,主要给出文件的逻辑名、存储路径、大小及增长特性。这些特征可以与以界面方式创建数据库时对数据库特征的设增长特性。这些特征可以与以界面方式创建数据库时对数据库特征的设置相联系。置相联系。 logical_file_name逻辑逻辑文件名,是数据库创建后在所有文件名,是数据库创建后在所有T-SQL语句中引用文件
45、时所使用语句中引用文件时所使用的名字的名字。2021-10-1454l os_file_name 操作系统操作系统文件名,是操作系统在创建物理文件时使用的路径和文件名文件名,是操作系统在创建物理文件时使用的路径和文件名。对于对于FILESTREAM文件组,文件组,FILENAME选项指向将存储选项指向将存储FILESTREAM数据的数据的路径路径“filestream_path”。在最后一个文件夹之前的路径必须存在,但不能。在最后一个文件夹之前的路径必须存在,但不能存在最后一个文件夹存在最后一个文件夹。例如例如,如果指定路径,如果指定路径C:FilestreamData,则,则C:Filest
46、ream必须存在才能必须存在才能运行运行CREATE DATABASE语句,但语句,但 Data文件夹不能存在。有关文件夹不能存在。有关FILESTREAM的内容将在第的内容将在第3章中介绍章中介绍。2021-10-1455 size:是数据文件的初始容量大小。对于主文件,若不指出大小,则:是数据文件的初始容量大小。对于主文件,若不指出大小,则默认为默认为model数据库主文件的大小。对于辅助数据文件,自动设置为数据库主文件的大小。对于辅助数据文件,自动设置为3 MB。UNLIMITED关键字表示指定文件将增长到磁盘满。关键字表示指定文件将增长到磁盘满。 max_size:指定文件的最大大小。
47、:指定文件的最大大小。UNLIMITED关键字表示文件大小不关键字表示文件大小不受限制,但实际上受磁盘可用空间限制。如果不指定受限制,但实际上受磁盘可用空间限制。如果不指定MAXSIZE选项,则文件选项,则文件将增长到磁盘空间满。将增长到磁盘空间满。 growth_increament:指出文件每次的增量,有百分比和空间值两种:指出文件每次的增量,有百分比和空间值两种格式,前者如格式,前者如10%,即每次在原来空间大小的基础上增长,即每次在原来空间大小的基础上增长10%;后者如;后者如5 MB,即每次增长即每次增长5 MB,而不管原来空间大小是多少。但要注意,而不管原来空间大小是多少。但要注意
48、,FILEGROWTH的的值不能超过值不能超过MAXSIZE的值。的值。2021-10-1456(4):定义文件组的:定义文件组的属性属性filegroup_name为定义的文件组的名称,为定义的文件组的名称,CONTAINS FILESTREAM选项指选项指定文件组在文件系统中存储定文件组在文件系统中存储FILESTREAM二进制大型对象(二进制大型对象(BLOB)。DEFAULT关键字指定命名文件组为数据库中的默认文件组。关键字指定命名文件组为数据库中的默认文件组。用于指定属于该文件组的文件。文件组中各文件的描述和数据文件描述相用于指定属于该文件组的文件。文件组中各文件的描述和数据文件描述
49、相同同。2021-10-1457l (5)LOG ON子句:用于指定数据库事务日志文件的子句:用于指定数据库事务日志文件的属性属性其其定义格式与数据文件的格式相同。如果没有指定该子句,则将自动定义格式与数据文件的格式相同。如果没有指定该子句,则将自动创建一个日志文件。创建一个日志文件。l (6)COLLATE collation_name:指定数据库的默认排序规则:指定数据库的默认排序规则。 排序排序规则名称既可以是规则名称既可以是 Windows 排序规则名称,也可以是排序规则名称,也可以是 SQL 排序规排序规则名称。如果没有指定排序规则,则将则名称。如果没有指定排序规则,则将SQL Se
50、rver实例的默认排序规则分实例的默认排序规则分配为数据库的排序规则配为数据库的排序规则。2021-10-1458(7)WITH子句:用于控制外部与数据库之间的双向子句:用于控制外部与数据库之间的双向访问访问 DB_CHAINING ON | OFF 当指定为当指定为ON时,数据库可以为跨数据库所有权时,数据库可以为跨数据库所有权链接的链接的源或目标。当为源或目标。当为OFF时,时,数据库不能参与跨数据库所有权链接。默认值为数据库不能参与跨数据库所有权链接。默认值为OFF。 TRUSTWORTHY ON | OFF 当指定为当指定为ON时,使用模拟上下文的数据库模块(如视图、用户定义函数或存时
51、,使用模拟上下文的数据库模块(如视图、用户定义函数或存储过程)可以访问数据库以外的资源。当为储过程)可以访问数据库以外的资源。当为OFF时,模拟上下文中的数据库模块不时,模拟上下文中的数据库模块不能访问数据库以外的资源。默认值为能访问数据库以外的资源。默认值为OFF。 2021-10-1459(8)FOR子句子句 FOR ATTACH子句:指定通过附加一组现有的操作系统文件来创建数据子句:指定通过附加一组现有的操作系统文件来创建数据库,库,使用使用FOR ATTACH子句时必须指定数据库的主文件子句时必须指定数据库的主文件。如果有多个数据和日。如果有多个数据和日志文件,则必须确保所有的志文件,
52、则必须确保所有的.mdf文件和文件和.ndf文件可用,否则操作将失败。文件可用,否则操作将失败。 FOR ATTACH_REBUILD_LOG子句:指定通过附加一组现有的操作系统文子句:指定通过附加一组现有的操作系统文件来创建数据库,使用这一选项将不再需要所有日志文件件来创建数据库,使用这一选项将不再需要所有日志文件。最最简单的一句创建数据库的语句为简单的一句创建数据库的语句为CREATE DATABASE database_name 2021-10-1460【例例2.5】 创建一个名为创建一个名为TEST1的数据库,其初始大小为的数据库,其初始大小为5 MB,最大,最大大小为大小为50 MB
53、,允许数据库自动增长,增长方式是按,允许数据库自动增长,增长方式是按10%比例增长。日志比例增长。日志文件初始为文件初始为2 MB,最大可增长到,最大可增长到5 MB,按,按1 MB增长。数据文件和日志文增长。数据文件和日志文件的存放位置为件的存放位置为SQL Server的数据库目录的数据库目录“C:Program FilesMicrosoft SQL ServerMSSQL10.SQL2008 MSSQLDATA”。假设。假设SQL Server服务已启动,服务已启动,并以系统管理员身份登录计算机。并以系统管理员身份登录计算机。在在“SQL Server Management Studio
54、”窗口中单击窗口中单击“新建查询新建查询”按钮新按钮新建一个查询窗口,如图建一个查询窗口,如图2.12所示所示。2021-10-1461 T-SQL 语句输入及 执行结果返回窗口 单击新建一个 查询窗口 图2.12 SQL Server 2008“查询分析器”界面2021-10-1462在在“查询分析器查询分析器”窗口中输入如下窗口中输入如下T-SQL语句:语句:CREATE DATABASE TEST1ON(NAME= TEST1_DATA,FILENAME=C:Program FilesMicrosoft SQL ServerMSSQL10.SQL2008MSSQLDATATEST1.md
55、f,SIZE=5 MB,MAXSIZE=50 MB,FILEGROWTH=10%)LOG ON(NAME=TEST1_log,FILENAME=C:Program FilesMicrosoft SQL ServerMSSQL10.SQL2008MSSQLDATATEST1.ldf,SIZE=2 MB,MAXSIZE=5 MB,FILEGROWTH=1 MB);2021-10-1463l 输入完毕后,单击输入完毕后,单击SSMS面板上的面板上的“!执行执行”按钮,如图按钮,如图2.13所示。从图所示。从图中可以看到,中可以看到,CREATE DATABASE命令执行时,在结果窗口中将显示命令命令
56、执行时,在结果窗口中将显示命令执行的进展情况。执行的进展情况。l 当命令成功执行后,在当命令成功执行后,在“对象资源管理器对象资源管理器”中展开中展开“数据库数据库”目录,可目录,可以看到,新建的数据库以看到,新建的数据库“TEST1”就显示于其中。如果没有发现就显示于其中。如果没有发现“TEST1”,则选择,则选择“数据库数据库”,右击鼠标,在弹出的快捷菜单中选择,右击鼠标,在弹出的快捷菜单中选择“刷新刷新”菜单项即可菜单项即可。2021-10-1464 单击此按钮执行 T-SQL 批命令 创建后的 TEST1数据库 命令执行情况 图2.13 在查询分析器中执行创建数据库命令2021-10-
57、1465通过数据库属性对话框可以看到,新建立通过数据库属性对话框可以看到,新建立TEST1数据库的各项属性完全符合预数据库的各项属性完全符合预定要求定要求。或 EXEC sp_helpdb test1【例例2.6】 创建一个名为创建一个名为TEST2的数据库,它有两个数据文件,其中,主数据的数据库,它有两个数据文件,其中,主数据文件为文件为20 MB,最大大小不限,按,最大大小不限,按10%增长。增长。 1个辅数据文件为个辅数据文件为20 MB,最大大小不,最大大小不限,按限,按10%增长;有增长;有1个日志文件,大小为个日志文件,大小为50 MB,最大大小为,最大大小为100 MB,按,按1
58、0 MB增增长。长。在查询分析器中输入如下在查询分析器中输入如下T-SQL语句语句并执行并执行.2021-10-1466通过数据库属性对话框可以看到,新建立通过数据库属性对话框可以看到,新建立TEST1数据库的各项属性完全数据库的各项属性完全符合预定要求。符合预定要求。【例例2.7】 创建一个具有创建一个具有2个文件组的数据库个文件组的数据库TEST3。要求:。要求:(1)主文件组包括文件)主文件组包括文件TEST3_dat1,文件初始大小为,文件初始大小为20 MB,最大为,最大为60 MB,按,按5 MB增长;增长;(2)有)有1个文件组名为个文件组名为TEST3Group1,包括文件,包
59、括文件TEST3_dat2,文件初始,文件初始大小为大小为10 MB,最大为,最大为30 MB,按,按10%增长增长。2021-10-1467CREATE DATABASE TEST3ON PRIMARY (NAME = TEST3_dat1,FILENAME = D:dataTEST3_dat1.mdf,SIZE = 20 MB,MAXSIZE = 60 MB,FILEGROWTH = 5 MB),FILEGROUP TEST3Group1(NAME = TEST3_dat2,FILENAME = D:dataTEST3_dat2.ndf,SIZE = 10 MB,MAXSIZE = 30
60、MB,FILEGROWTH = 10%)2021-10-1468CREATE DATABASE MYMOVIEREVIEWS ON PRIMARY(NAME=REVIEWS_DATA,FILENAME=C:DATAREVIEWS_DATA.MDF),FILEGROUP MOVIEREVIEWSFSGROUP1 CONTAINS FILESTREAM(NAME=REVIEWS_FS,FILENAME=C:DATAREVIEWS_FS)LOG ON(NAME=REVIEWS_LOG,FILENAME=C:DATAREVIEWS_LOG.LDF)2021-10-1469n 在在C:DATAREVIE
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 藏医技能考试试题及答案
- 育婴师学习环境考题及答案
- 光电工程师证书考试临考注意事项试题及答案
- 激光技术工程师行业改革带来的机会试题及答案
- 发电厂运行试题及答案
- 2025甘肃省安全员考试题库
- 育婴师的职业压力及应对策略试题及答案
- 药剂实践反馈与改进试题及答案
- 提升能力2024专利考试试题与答案
- 行政管理应试题及答案
- 废气治理设施运行管理规程制度
- 西安庆华民用爆破器材股份有限公司百色分公司增雨防雹火箭弹生产线建设项目环评报告
- 泥石流灾害综合治理工程可行性研究报告
- 智能建造施工技术应用实施方案
- 机械设计说明书-多功能自动跑步机机械部分设计
- 英语小故事(中英文对照)课件
- 《古罗马人的数字》课件
- 2022-2023学年上海市徐汇区世界外国语中学八年级(下)期中物理试卷
- 注塑工艺培训-课件
- 钓鱼中各种氨基酸诱食剂说明书及使用方法
- 会计事务所内控审计所需资料清单
评论
0/150
提交评论