u CREATE DATABASE db2
u ON PRIMARY
u (NAME = db2_data,
u FILENAME = ‘C:\DATABASE\DB2.MDF’,
u SIZE = 10 ,
u MAXSIZE = 50,
u FILEGROWTH = 1 )
u LOG ON
u (NAME = db2_Log,
u FILENAME = ‘C:\DATABASE\DB2.LDF’,
u SIZE = 10 ,
u MAXSIZE = UNLIMITED,
u FILEGROWTH = 10% )
有关CREATE DATABASE指定的使用语法,就简单介绍到此,如果需要更详细的使用说明,可以参考“SQL线上说明”。其他有关Transact-SQL的使用,将会在第八章中详细介绍。
5-6 数据库选项
对于已建立的数据库,可以通过一些数据库选项的设置来决定数据库的特性。只有Sysadmin与Dbcreator固定服务器角色,以及db_owner固定数据库角色的系统管理员、数据库拥有者或成员可修改这些选项。这些选项的设置只会作用在设置的数据库上,而不会影响其他数据库。一旦数据库选项改变后,检查点会自动让修改立即生效。
我们可以将数据库选项区分为以下五类:
· 自动选项
· 数据指针选项
· 复原选项
· SQL选项
· 状态选项
5-6-1 自动选项
自动选项是用来控制某些自动化行为,包含:AUTO_CLOSE自动关闭、AUTO_CREATE_STATISTICS自动产生统计数据、AUTO_ UPDATE_ STATISTICS自动更新统计数据以及AUTO_SHRINK自动压缩等四个选项。
1. AUTO_CLOSE自动关闭
AUTO_CLOSE选项是用来设置是否自动关闭数据库,如果设置为ON,则当数据库的最后一个用户离开,且完成数据库中的所有程序时,数据库会关闭(完全关机)并且释放所有资源。默认个人版的SQL Server 2000,所有数据库的AUTO_CLOSE选项设为ON,其他版本的SQL 2000,AUTO_CLOSE选项为OFF。
当用户要再次使用数据库时,数据库会自动重新打开。如果数据库处于完全关机状态,除非用户要使用数据库而重新激活SQL Server,否则数据库不会被重新打开。当AUTO_CLOSE选项被设置为OFF时,即使目前没有用户在使用数据库,数据库也会保持打开状态。
AUTO_CLOSE选项对于桌面型数据库非常有用,它允许用户以管理一般文件的方式来管理数据库文件。用户可以移动或复制备份,甚至以电子邮件的方式传送给其他用户。如果存取数据库的应用程序会不断地与SQL Server建立与中断联机,就不能将此数据库的AUTO_CLOSE 选项设为ON,因为每次关闭或重新打开数据库联机,会降低其效率。
2. AUTO_CREATE_STATISTICS自动产生统计数据
这个选项是用来设置是否要自动产生统计数据,默认为ON,在进行查询操作时自动产生数据行的统计数据,产生的统计数据可以改善查询效率,让SQL Server查询最佳化器可以更确定如何评估查询。如果统计数据不再使用,SQL Server 会自动删除它们。若将这个选项设置为OFF时,SQL Server将不会自动建立统计数据,而是需要由手动建立。
3. AUTO_UPDATE_STATISTICS自动更新统计数据
这个选项是用来设置是否要自动更新统计数据,默认为ON,当数据的内容被删除或新增时,导致现有的统计数据不在正确时,会自动更新这些统计数据,使其符合最新的状况。如果将数据库的这个选项设置成OFF,则当数据变动时,将不会自动更新统计数据,而需要手动更新。
4. AUTO_SHRINK自动压缩
这个选项是用来设置SQL Server是否会定期检查这个数据库的文件空间,并在文件空间过剩时,自动缩减数据文件的空间以减少空间的浪费。如果设置为ON,则当数据库文件(数据文件或事务日志文件)未使用的空间大于25%时,SQL Server会自动将文件大小缩减成25%的剩余空间或数据文件的初始大小(视哪一个较大而定)。如果设置成OFF,数据库文件将不会被自动缩减。默认使用个人版SQL Server时,这个选项选项为ON,其他的版本则是设为OFF。
事务记录文件只有在数据库设成简单复原模型或记录文件已备份时,才会被缩小。而且它也不会去缩小一个只读数据库。
5-6-2 数据指针选项
数据指针选项用来控制数据指针的行为与范围,包含CURSOR_CLOSE_ ON_COMMIT与CURSOR_DEFAULT两个选项。
1. CURSOR_CLOSE_ON_COMMIT
这个选项用来设置当事务认可后打开的数据指针是否自动关闭,默认为OFF,数据指针在事务期间会保持打开,只有在关闭联机或联机逾时时才会关闭数据指针。另外,联机层级的设置将会复写CURSOR_CLOSE_ON_COMMIT的默认数据库设置。默认ODBC与OLE DB客户端会利用联机层级的SET语句,在SQL Server的工作阶段中将CURSOR_CLOSE_ON_COMMIT设成OFF。
2. CURSOR_DEFAULT LOCAL | GLOBAL
这个选项用来设置数据指针的范围,默认为CURSOR_DEFAULT GLOBAL。如果将它设置为CURSOR_DEFAULT LOCAL,且数据指针在建立时不是定义为GLOBAL,则该数据指针仅适用数据指针建立时的批次、存储过程或触发程序,只有在这个范围中的指针名称是有效的。数据指针可以参考批次、存储过程、触发程序或存储过程OUTPUT参数中的本机数据指针变量。当批次、存储过程或触发程序终止时,该数据指针的配置将会被取消。
反之,如果将CURSOR_DEFAULT设置为GLOBAL,且数据指针在建立时不是定义为LOCAL,则该数据指针的范围适用于联机全域。而数据指针的名称可以参考联机执行的任何存储过程或批次中的数据指针,只有在中断联机时才会取消该数据指针的配置。
5-6-3 复原选项
复原选项控制了数据库的复原模式,它包含RECOVER与TORN_PAGE_ DETECTION两个选项。
1. RECOVERY
RECOVERY复原模型有三种选项可供选择:FULL(完整)、BULK_LOGGED(大量登录)以及SIMPLE
上一页 [1] [2] [3] [4] [5] [6] [7] 下一页