使用 Alter 修改 Sql Server 数据库
使用下面的语句创建一个样例数据库:
SQL: Create Database
CREATE DATABASE Accounting
ON
(NAME = 'Accounting',
FILENAME = 'c:Program FilesMicrosoft SQL ServerMSSQL.1mssqldataAccountingData.mdf',
SIZE = 10MB,
MAXSIZE = 50MB,
FILEGROWTH = 5MB)
LOG ON
(NAME = 'AccountingLog',
FILENAME = 'c:Program FilesMicrosoft SQL ServerMSSQL.1mssqllogAccountingLog.ldf',
SIZE = 5MB,
MAXSIZE = 25MB,
FILEGROWTH = 5MB)使用sp_helpdb查看创建结果: EXEC sp_helpdb 'Accounting'
假设想要做些修改,比如你知道将要向数据库做一个很大的导入,而现在的数据库只有15MB大小,容纳不了这么多东西。如果根据数据库的自动增长功能,以每次5MB的增长量自动扩大数据库,那么服务器至少将进行16次的再分配,既然已经知道数据量将达100MB,何不一次完成?
使用ALTER DATABASE命令可以做到,最简化的语句如下:
ALTER DATABASE Accounting
MODIFY FILE
(NAME = 'Accounting',
SIZE = 100MB)
使用ALTER DATABASE应注意的地方:
1、上例中,尽管修改后超过了先前的最大大小50MB,但是不会有任何错误,因为我们是显示的增加数据库的大小。如果按照原来自动增长的方式会因为大小限制而让导入半途而废。
2、最大值之增长到新的显示值的大小----没有留下自动增长的空间。
3、使用MODIFY修改时,size值必须比当前的大,否则会出现错误:‘MODIFY FILE failed. Specified size is less than current size.’
------分隔线----------------------------
------分隔线----------------------------