数据库的创建与使用.ppt_第1页
数据库的创建与使用.ppt_第2页
数据库的创建与使用.ppt_第3页
数据库的创建与使用.ppt_第4页
数据库的创建与使用.ppt_第5页
已阅读5页,还剩73页未读 继续免费阅读

下载本文档

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

文档简介

1、第5章 数据库的创建与使用,5.1 SQL Server数据库的结构,1. 逻辑数据库(数据库对象) SQL Server 2000数据库是存储数据的容器,是一个存放数据的表和支持这些数据的存储、检索、安全性和完整性的逻辑成分所组成的集合。,2.物理数据库(数据库文件),主数据文件(Primary Database File):扩展名为.mdf,是数据库的起点,并指向其他文件,每个数据库只有一个主文件。 次文件(Secondary Database File): .ndf,是主文件的辅助文件,可以在不同的磁盘上创建数据库文件,以提高处理效率, 当主文件的大小超过操作系统的限制时, 必须使用次文

2、件。 事务日志文件(Log):.ldf,用于存储数据库的更新情况等事务日志信息。如insert, delete, update操作都会记录在案。 通常, 这三个文件都在SQL的Data文件夹中,SQL Server事务日志,SQL Server事务日志存储数据库的更新情况等事务日志信息 ,当数据库损坏时,管理员使用事务日志恢复数据库。 每一个数据库至少必须拥有一个事务日志文件,而且允许拥有多个日志文件。事务日志文件的扩展名为ldf,日志文件的大小至少是512KB。 SQL Server事务日志采用提前写入的方式 。,事务日志的工作方式,3.数据库文件组,为了便于分配和管理,SQL Server

3、允许将多个数据文件归为一组, 并赋予一个名称,即文件组. 使用文件组可以改善数据库的查询性能. 文件组有两种: 主文件组: 包含主数据文件和任何其他不属于另一个文件组的文件,系统表都包含在主文件组中. 用户定义文件组: 在create database 或alter database语句中使用关键字filegroup指定文件组,存储结构示意图,数据库对象:表,索引,视图,触发器,存储过程,约束,用户,图表,多个次文件.ndf,日志文件.ldf,主文件 .mdf,主文件组 次文件组,D,D,E,C,一个文件只能属于一个文件组;一个文件组也只能被一个数据库使用; 日志文件不属于任何文件组.,1,2

4、,文件组的好处: 如可以将数据文件data1.mdf、data2.ndf和data3.ndf分别创建在三个盘上,这三个文件组成文件组fgroup1,在创建表的时候,就可以指定一个表创建在文件组fgroup1上。这样该表的数据就可以分布在三个盘上,在对该表执行查询时,可以并行操作,大大提高了查询效率。,5.1.2 数据库存储结构 -逻辑对象与物理存储的关系,数据库中的物理存储单位是页面和盘区,可用于估算数据所占用的空间。 页面:是数据库中使用的最小数据单元,占8K字节,用于存储数据,如数据表的一行或若干行,一行不允许跨页面。 盘区:是SQL Server创建数据逻辑对象时使用的分配单位,有8个页

5、面64K,若新建一个数据库中创建了一个表、两个索引,在表中有一条记录,则总共占用3X64K=192K的空间。 即,数据库是这样的数据结构:一个数据库是由若干文件组成,一个文件由若干盘区组成,一个盘区有8个页面。,页面(Page),SQL Server中所有的信息都存储在页面(Page)上,页面是数据库中使用的最小数据单元,每个页面存储8 K的信息。 每个页面都有一个96字节的头来存储系统信息,比如页面类型、页面剩余空间、拥有该页面的数据库逻辑对象的ID等。 SQL Server 使用如下类型的页面。 数据页面:用于存储数据库数据,但不包括text、ntext和image类型的数据。 索引页面:

6、用于存储索引数据。 文本/图像页面:用于存储text、ntext和image类型的数据。 全局分配页面:用于存储盘区分配的信息。 页面剩余空间页面:用于存储页面剩余空间的信息。 索引分配页面:用于存储页面被表或索引使用的盘区的信息。,盘区(Extent),由8个连续页面组成的数据结构。它是SQL Server 中为表和索引分配空间的最小单位。 当创建一个表时,SQL Server会自动地以盘区为单位给它分配空间。 为了使存储空间的使用更加高效,SQL Server不会将整个盘区分配给只包含少量数据的表。SQL Server 设计了两种类型的盘区。 单一盘区(Uniform Extents):只

7、被单一的数据库对象使用,所有8个页面都用于这个对象。 混合盘区(Mixed Extents):被最多8个对象共同使用。 一个新建的表或索引首先从混合盘区中分配页面,当表或索引中的数据量增大到8个页面时,再将它转化为单一盘区。,数据的存储方式,扩展盘区( 8 个连续页,每页 8 KB),数据页 (8 KB),表,索引,数据(文件) .mdf 或 .ndf,日志(文件).ldf,行的最大容量 = 8060 字节,SQL Server的数据库结构小结,逻辑存储结构(数据库对象)指的是数据库是由哪些性质的信息所组成,SQL Server的数据库不仅仅只是数据的存储,所有与数据处理操作相关的信息都存储在

8、数据库中。数据库对象如表,索引,视图,触发器,存储过程,约束,用户,图表等. 物理存储结构(数据库文件)则是讨论数据库文件是如何在磁盘上存储的,数据库在磁盘上是以文件为单位存储的,由数据库文件和事务日志文件组成,一个数据库至少应该包含一个数据库文件和一个事务日志文件, 只有数据库管理员才需要处理。,5.1.3 Sql server系统数据库与系统表,系统数据库,用户数据库,master,model,tempdb,msdb,pubs,Northwind,User1,distribution,Sql server数据库的类型,1.SQL Server 系统数据库简介,SQL Server 2000

9、主要有4个系统数据库 1. Master数据库是SQL Server系统最重要的数据库,它记录了SQL Server系统的所有系统信息。这些系统信息包括所有的登录信息、系统设置信息、SQL Server的初始化信息和其它系统数据库及用户数据库的相关信息。 2. Model数据库是所有用户数据库和Tempdb数据库的模板数据库,它含有Master数据库所有系统表的子集,这些系统数据库是每个用户定义数据库需要的。,3. Msdb数据库是代理服务数据库,为其警报、任务调度和记录操作员的操作提供存储空间。 4. Tempdb是一个临时数据库,它为所有的临时表、临时存储过程及其它临时操作提供存储空间。每

10、次启动SQL Server时都会清空。 Pubs和Northwind数据库是两个示例数据库,它们可以作为SQL Server的学习工具。,Sql server数据表的分类,系统表,用户表,在SQL Server 2000中,每个数据库中最多可以创建200万个表,用户创建的数据库表中,最多可以定义1024列(字段)。,系统表,DBMS的整个环境也是一个需要管理的环境,它自己也有很多数据和信息,也储存在一些表中,这就是系统表。 系统表存储整个系统和当前数据库对象的信息(元数据) 元数据是描述数据的数据,如某列数据的数据类型或者长度等 系统目录存储与整个系统有关的元数据 只存储在 master 数据

11、库中,如: Syslogins(登录信息)、sysmessages(各种消息内容) 数据库目录存储当前数据库的元数据 每个数据库(包括 master 数据库)都有,如: Sysusers(用户信息)、sysobjects(对象信息) SQL Server 经常访问系统目录和数据库目录,检索系统正常运行所需的必要信息。,几个重要的系统表,系统目录中的系统表(在 master 数据库中): syslogins:包含所有的用户帐户信息,包括名字、口令和配置信息。 sysmessages:包含所有SQL Server 2000可用的系统错误消息。 sysservers:包含本地服务器和远程服务器的信息

12、。 sysdatabases:包含服务器上所拥有的所有数据库有关信息。对SQL Server 系统上的每个系统数据库和用户自定义的数据库含有一行记录。 sysusers: 它对整个数据库中的每个Windows NT用户、Windows NT用户组、SQL Server 用户或者SQL Server 角色含有一行记录。,数据库目录中的系统表(在各个数据库中都有) sysusers:它对数据库中每一个有权限访问数据库的用户都对应一行记录。 sysfilegroups:数据库中每个文件组的信息。 sysconstraints:数据库中所有约束的信息。 sysprotects:数据库中用户对于对象所有

13、的权限的信息。 sysobjects:它对数据库中每个数据库对象含有一行记录。 syscolumns:它对基表或者视图的每个列和存储过程中的每个参数含有一行记录。 sysindexes:它对每个索引和没有聚簇索引的每个表含有一行记录,它还对包括文本/图像数据的每个表含有一行记录。,5.2 界面方法创建和管理数据库,5.2.1 创建数据库 创建数据库需要一定许可,在默认情况下,只有系统管理员和拥有数据库创建权限的人才可以创建数据库。数据库被创建后,创建数据库的用户自动成为该数据库的所有者dbo。 创建数据库的过程实际上就是为数据库设计名称、设计所占用的存储空间和存放文件位置的过程等。 几种方法:

14、 通过企业管理器创建数据库 使用向导创建数据库 使用Transact-SQL语言创建数据库。,一、通过企业管理器创建数据库步骤: (1)启动SQL Server企业管理器 (2)展开服务器,右击【数据库】快捷菜单选择【新建数据库】,弹出【数据库属性】窗口。 (3)在【数据库属性】窗口中选【常规】选项卡,在【名称】栏中输入数据库的名称。 (4)选择【数据文件】选项卡,指定数据库文件名称及存储位置,设置其他属性。 (5)选择【事务日志】选项卡,指定事务日志文件名称及保存位置,并可以设置日志文件的初始大小、增长方式。 (6)设置完成之后,单击【确定】按钮完成。,通过企业管理器创建数据库,关于数据库的

15、默认存储位置: 主数据文件默认存储位置和文件如下: SQL Server 2000根目录data数据库名_Data.MDF 日志文件的默认存储位置和文件如下: SQL Server 2000根目录data数据库名_Log.LDF 选择“数据文件”和“事务日志”两个标签栏,显示系统的默认设置,用户可以更改这两个文件的存放位置和文件名。 有关参数的默认值: 对于新创建的数据库,系统对数据文件和日志文件的默认值为:初始大小1MB,最大大小不限制,而实际上仅受硬盘空间的限制,允许数据库自动增长,增长方式为按10%比例增长;,注意:SQL Server 2000中的数据和事务日志文件不能存放在压缩文件系

16、统或象共享网络目录等远程的网络驱动器上。 SQL Server 2000的文件拥有两个名称,即逻辑文件名和物理文件名。当使用Transact-SQL命令语句访问某一个文件时,必须使用该文件的逻辑名 。 物理文件名是文件实际存储在磁盘上的文件名,而且可包含完整的磁盘目录路径。,通过企业管理器创建数据库,【例】创建数据库CJGL,初始大小为5MB,最大大小50MB,数据库自动增长,增长方式是按10%比例增长;日志文件初始为2MB,最大可增长到5MB(默认为不限制),按1MB增长(默认是按10%比例增长);所有者是Administrator。 以Administrator身份登录计算机,并启动SQL

17、 Server服务。 开始程序Microsoft SQL Server企业管理器,SQL Server“企业管理器”启动。,企业管理器中查看、修改数据库属性方法如下: (1)展开服务器和数据库文件夹 (2)右击想要查看/修改的数据库,选择【属性】菜单 (3)在【属性】窗口中查看/修改数据库的设置,包括增减数据文件和日志文件、修改文件属性、修改数据库选项等,二、使用向导创建数据库,第1步 展开SQL Server组,选择SQL Server服务器。 第2步 在“工具”菜单中选择“向导”项,5.2.2 修改数据库,对已存在的数据库可以进行的修改包括: 增加或删除数据文件 增加或删除日志文件 增加或

18、删除文件组 改变数据文件的大小和增长方式 改变日志文件的大小和增长方式 注意: 修改时是不能改变文件名的,包括逻辑和物理名。 方法: “企业管理器”中在该数据库名上点击鼠标右键,出现快捷菜单,选择“属性”,利用企业管理器修改数据库,(1) 改变数据文件的大小和增长方式(只能小大),【例1】 将CJGL数据库的主数据文件CJGL_Data.mdf文件的最大大小由50MB修改为不限制。,利用企业管理器修改数据库,(2) 增加数据文件(所增加的文件只能是辅助数据文件.ndf ),【例2】在CJGL数据库中增加数据文件CJGLBAK,其属性均取系统默认值。 操作方法:在“数据文件”选项卡点击空白行,在

19、“文件名”一栏中输入数据文件名,并可设置文件的初始大小和增长属性,利用企业管理器修改数据库,(3) 删除数据文件,【例3】将CJGL数据库中刚增加的辅助文件CJGLBAK删除。,利用企业管理器修改数据库,(4) 增加或删除文件组,【例4】设要在数据库CJGL中增加一个名为FGroup的文件组。 操作方法为:选择“文件组”标签栏,在PRIMARY行的下面一行输入“FGroup”文件组,单击“确定”按钮。,利用企业管理器修改数据库,在增加了文件组后,即可在其中增加数据文件:选择“数据文件”标签栏,按增加数据文件的操作方法输入数据文件名,然后选择文件组“Fgroup” 注意:增加文件组和增加数据文件

20、必须分步完成,先增加文件组-确定,再增加文件-确定。 删除操作,反之。,查看文件组信息:使用存储过程,关于默认的文件组 数据库建立时的默认文件组为主文件组 未指定文件组的对象都将放到默认文件组中 调整默认的主文件组中文件的大小 若主文件组没有空间,就不能再往系统表中写入任何信息 在下列情况下,主文件组会填满: 关闭了自动增长选项 在主文件组中的文件的所有磁盘空间耗尽。 解决办法: 要么重新打开自动增长 要么将其它文件从磁盘上移走以释放更多的空间。,创建数据库时没有指定文件组的任何对象都被分配到默认文件组中的数据文件中。然而,系统对象和系统表永远保留在 PRIMARY 文件组内。 可用 ALTE

21、R DATABASE 语句更改默认文件组。 更改默认文件组可防止用户对象与系统对象争夺数据空间,重命名数据库需要使用系统存储过程SP_renamedb,其语法如下: sp_renamedb old_name , new_name 例 更改student数据库的名称为study。 exec sp_renamedb student , study,(5) 更改数据库名(不能使用企业管理器),5.2.3 删除数据库,【例】利用企业管理器删除CJGL数据库。 第1步 选择名为CJGL的数据库,在其上单击鼠标右键,在弹出的快捷菜单上选择“删除”,利用企业管理器删除数据库,第2步 在弹出如图2.27所示的

22、对话框中单击“确定”,即删除了数据库CJGL。 注意:删除数据库后,该数据库的所有对象均被删除,将不能再对该数据库作任何操作,因此应十分慎重。,5.2.4 分离和附加数据库,SQL Server 2000 允许分离数据库的数据和事务日志文件,然后将其重新附加到另一台服务器,或者同一台服务器上 分离数据库 分离数据库是将数据库从 SQL Server环境中移除,但是保持组成该数据库的数据和事务日志文件中的数据库完好无损 分离数据库要求没有用户正在使用数据库,数据库中没有未完成的事务,并且在内存中没有这个数据库的未提交的数据(脏页) 一旦数据库被分离,其条目就从 master 数据库的 sysda

23、tabases 表中被移除。从 SQL Server 的角度看,数据库似乎被删除了但是其物理文件仍然保存在磁盘上,分离和附加数据库(续),附加数据库 当附加数据库时,必须指定主数据文件(.mdf)的名称和物理位置 只需要指定当前的文件名,无论当前的名字和从数据库分离时的名字是否相同。亦可以指定不同于原来数据库名字的新的数据库名字。只有当文件位置和在主文件首存储的文件原始位置不同的时候,才需要指定文件名 若附加的文件超过了16个,可使用 CREATE DATABASE 语句并指定 for attach 选项 分离/附加数据库的操作方法:右键单击“数据库”“所有任务”“附加数据库” / ”分离数据

24、库“命令,【课堂练习】,创建文件组secfg,将一个新的数据文件zygldata3添加到新建文件组中,5.3 使用T-SQL(命令方式)创建和管理数据库,5.3.1 T-SQL语言简介 历史 SQL: Struceured Query Languang 1974年,由Boyce和Chamber提出,称为SEQUEL语言 1975-1979年,由IBM的San Jose研究室研制,在System R上实现,称为SEQUEL2,即目前的SQL语言。 1982年美国国家标准化组织ANSI确认SQL为数据库系统的工业标准,现在许多关系型数据库供应商都在自己的数据库中支持SQL语言,如:Access,

25、Oracle, DB2等。,有关标准化,有关组织 ANSI (American Natural Standard Institute) ISO (International Organization for Standardization) 有关标准 ANSI SQL-86 ANSI SQL-89:增加了对完整性约束的支持 ISO SQL-92( SQL2):增加了许多新特性,如新的数据类型,更丰富的数据操作,更强的完整性、安全性支持等。 ISO SQL-99 ( SQL3):增加对面向对象模型的支持 ISO SQL-2003 新的标准,1T-SQL 简介,Transact SQL是微软对AN

26、SI SQL-99标准的扩展,是SQL Server的核心,它扩展的主要功能是:加入了程序的控制结构,如 IFELSE、WHILE语句等;加入了局部变量和全局变量等。 利用Transact SQL可以编写出复杂的查询语句,可以建立驻留在SQL Server上的数据库对象,如触发器、存储过程等 注意:如希望开发的程序具有更好的可移植性,那么应尽量使用标准的SQL,否则就可考虑使用Transact SQL。 SQL语言集数据查询、数据操纵、数据定义和数据控制功能于一体,是一个综合的、通用的、功能极强,同时又简洁易学的语言。T-SQL语言由以下几部分组成。,其他的语言元素(如常量,变量,运算符,控制

27、语句等),Transact-SQL 语句的功能分类,2.标识符,标识符 用来定义服务器、数据库、数据库对象和变量等的名称 SQL Server标识符有两种 定界标识符: 使用双引号“”或中括弧 括起来的,它可以不遵守标识符的命名规则. 如“my table”, select 常规标识符: 严格遵守标识符命名规则, 可以不用定界符标注. SQL Server规定:没有使用定界符的标识符, 一律按常规对待. 标识符的规则: 首字符必须是其中之一: 字母, 汉字, _ , , # 以后可以是:字母, 数字, , $, #, _ 不能是保留字, 不区分大小写, 不允许有空格 所有标识符长度为128。,

28、3.逻辑数据库对象的完全限定名与部分限定名,(1) 完全限定名:是对象的全名 包括四个部分: 服务器名、数据库名、所有者名和对象名 其格式为: server. database. owner. Object (2) 部分限定名 使用全名往往很繁琐且没有必要,所以常省略全名中的某些部分,对象全名的四个部分中的前三个部分均可以被省略,当省略中间的部分时,圆点符“.”不可省略。,对象名的有效格式可以是: server.database.owner.object server.database . . object server . . owner.object server. . .object d

29、atabase.owner.object database . . object owner . Object 如:以sa身份登录服务器后,作以下查询: SELECT * FROM WINXP-SP2.学分制选课.DBO.学生信息 SELECT * FROM GJL.dbo.TABLE1 SELECT * FROM ABC. .TABLE1,说明:创建一个对象必须具有唯一合法的完全限定名(四部分合起来唯一),同一服务器数据库不能重名,同一数据库所有者不能同名,同一所有者对象名(表,视图,存储过程等)不能重名。 在部分限定名中,未指出的部分使用以下默认值: 服务器名称默认为本地服务器上的当前实例

30、 数据库名称默认为当前数据库 所有者名称默认为指定数据库中与当前连接的登录账户相关联的用户名,或者数据库所有者(dbo)。,4.语法格式约定,5.3.2 使用T-SQL(命令方式)创建数据库,语法格式: CREATE DATABASE database_name ON /*指定数据文件和文件组属性*/ ,.n , ,.n /*必须先有主文件组PRIMARY*/ LOG ON ,.n /*指定日志文件属性*/ COLLATE collation_name FOR LOAD | FOR ATTACH , := PRIMARY ( NAME = logical_file_name , FILENAM

31、E = os_file_name , SIZE = size , MAXSIZE = max_size | UNLIMITED , FILEGROWTH = growth_increment ) := FILEGROUP filegroup_name ,5.3.2 使用CREATE DATABASE创建数据库,【例5.2】创建一个名为CJGL1的数据库,其初始大小为5MB,最大大小50MB,允许数据库自动增长,增长方式是按10%比例增长;日志文件初始为2MB,最大可增长到5MB,按1MB增长。假设SQL Server服务已启动,并以Administrator身份登录计算机。,5.3.2 使用C

32、REATE DATABASE创建数据库,在T-SQL语句输入窗口中输入如下语句: CREATE DATABASE CJGL ON (NAME=CJGL_Data, FILENAME=e:sqlCJGL.mdf, SIZE=5MB, MAXSIZE=50MB, FILEGROWTH=10% ) LOG ON (NAME=CJGL_Log, FILENAME=e:sqlCJGL_Log.ldf, SIZE=2MB, MAXSIZE=5MB, FILEGROWTH=1MB ) GO,主文件组名PRIMARY可以省略,在数据文件结束时无逗号,在右括号前无逗号,5.3.1 使用CREATE DATABA

33、SE创建数据库,【例】创建TEST1的数据库。 CREATE DATABASE TEST1 ON ( NAME = TEST1_data, FILENAME = e:sqlt1.mdf ) GO,此处,日志文件没有特别指定,而是使用默认方式创建,【例5.3】 创建一个名为TEST2的数据库,它有三个数据文件,其中主数据文件为100MB,最大大小为200MB,按20MB增长;2个辅数据文件为20MB,最大大小不限,按10%增长;有2个日志文件,大小均为50MB,最大大小均为100MB,按10MB增长。 CREATE DATABASE TEST2 ON PRIMARY (NAME = TEST2_

34、data1, FILENAME = e:sqltest2_data1.mdf, SIZE = 100MB, MAXSIZE = 200MB, FILEGROWTH = 20MB ), (NAME = TEST2_data2, FILENAME = e:sqltest2_data2.ndf, SIZE = 20MB, MAXSIZE = UNLIMITED, FILEGROWTH = 10% ),此处加上 filegroup secfg 就可以自定义一个文件组secfg,( NAME = TEST2_data3, FILENAME = e:sqltest2_data3.ndf, SIZE = 2

35、0MB, MAXSIZE = UNLIMITED, FILEGROWTH = 10% ) LOG ON ( NAME = TEST2_log1, FILENAME = e:sqltest2_log1.ldf, SIZE = 50MB, MAXSIZE = 100MB, FILEGROWTH = 10MB ), (NAME = TEST2_log2, FILENAME = e:sqltest2_log2.ldf, SIZE = 50MB, MAXSIZE = 100MB, FILEGROWTH = 10MB ) GO,创建多文件组数据库举例,Create database sales On pr

36、imary (name=spri1_dat, Filename=e:spri1dat.mdf, Size=10,maxsize=50,filegrowth=15%), (name=spri2_dat, Filename=e:spri2dat.ndf, Size=10,maxsize=50,filegrowth=15%),Filegroup salesgroup1 (name=sgrp1fi1_dat, Filename= e:sgrp1fi1_dat.ndf, Size=10,maxsize=50,filegrowth=5), (name=sgrp1fi2_dat, Filename= e:s

37、grp1fi2_dat.ndf, Size=10,maxsize=50,filegrowth=5) Log on (name=sale_log, Filename= e:salelog.ldf, Size=5,maxsize=25,filegrowth=5),习题答案讲解,第1章第3章,【课堂练习】,完成习题:92“二,3”。 创建一个有多个文件组的数据库。,5.3.3 使用ALTER DATABASE修改数据库,使用ALTER DATABASE命令对数据库可进行以下修改: 增加或删除数据文件 增加或删除日志文件 增加或删除文件组 改变数据文件的大小和增长方式 改变日志文件的大小和增长方式 数

38、据库更名,5.3.3 使用ALTER DATABASE修改数据库1. ALTER DATABASE语句,语法格式: ALTER DATABASE database_name ADD FILE ,n TO FILEGROUP filegroup_name /*在文件组中增加数据文件*/ | ADD LOG FILE ,n /*增加日志文件*/ | ADD FILEGROUP filegroup_name /*增加文件组*/ | REMOVE FILE logical_file_name /*删除数据文件和日志文件,由逻辑文件名识别*/ | REMOVE FILEGROUP filegroup_n

39、ame /*删除文件组*/ | MODIFY FILE /*更改文件属性*/ | MODIFY FILEGROUP filegroup_name filegroup_property | NAME = new_filegroup_name /*更改文件组属性,如READONLY ,DEFAULT */ | MODIFY NAME = new_dbname /*数据库更名*/ ,显然,每次只能完成一个动作,5.3.3 使用ALTER DATABASE修改数据库,【例5.4】设已经创建了数据库CJGL,它只有一个主数据文件,其逻辑文件名为CJGL_Data,物理文件名为e:sqldataMSSQL

40、dataCJGL_Data.mdf,大小为5MB,最大大小为50MB,增长方式为按10%增长; 要求:修改主数据文件大小为不限制,增长方式为按5MB增长 分析:ALTER DATABASE 语句一次只能修改一个文件的属性,而同一个数据文件的两个属性的修改,可以只执行一次ALTER DATABASE,ALTER DATABASE CJGL MODIFY FILE ( NAME = CJGL_Data, MAXSIZE = UNLIMITED, /*将主数据文件的最大大小改为不限制。*/ FILEGROWTH = 5MB /*将主数据文件的增长方式改为按5MB增长。*/ ) GO,【例5.5】先为

41、数据库CJGL增加数据文件CJGLBAK。然后删除数据文件CJGLBAK。 ALTER DATABASE CJGL ADD FILE (NAME = CJGLBAK, FILENAME = e:CJGLBAK_dat.ndf, SIZE = 10MB, MAXSIZE = 50MB, FILEGROWTH = 5% ) GO ALTER DATABASE CJGL REMOVE FILE CJGLBAK GO,5.3.3 使用ALTER DATABASE修改数据库,【例5.6】为数据库CJGL添加文件组FGROUP,并为此文件组添加两个大小均为10MB的数据文件。 分析:本题需要执行二次ALT

42、ER DATABASE,即先增加文件组,再增加数据文件 ALTER DATABASE CJGL ADD FILEGROUP FGROUP GO ALTER DATABASE CJGL ADD FILE (NAME = CJGL_DATA2, FILENAME = e:CJGL_Data2.ndf, SIZE = 10MB,MAXSIZE = 30MB, FILEGROWTH = 5MB ), (NAME = CJGL_DATA3, FILENAME = e:CJGL_Data3.ndf, SIZE = 10MB, MAXSIZE = 30MB, FILEGROWTH = 5MB ) TO FILEGROUP FGROUP GO,5.3.3 使用ALTER

温馨提示

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

评论

0/150

提交评论