使用ALTER修改数据库

使用下面的语句创建一个样例数据库:
ContractedBlock.gif ExpandedBlockStart.gif SQL: Create Database
<!--

Code highlighting produced by Actipro CodeHighlighter (freeware)
http://www.CodeHighlighter.com/

--&gtCREATE DATABASE Accounting
ON
 (NAME 
= 'Accounting',
  FILENAME 
= 'c:\Program Files\Microsoft SQL Server\MSSQL.1\mssql\data\AccountingData.mdf',
  SIZE 
= 10MB,
  MAXSIZE 
= 50MB,
  FILEGROWTH 
= 5MB)
LOG ON
 (NAME 
= 'AccountingLog',
  FILENAME 
= 'c:\Program Files\Microsoft SQL Server\MSSQL.1\mssql\log\AccountingLog.ldf',
  SIZE 
= 5MB,
  MAXSIZE 
= 25MB,
  FILEGROWTH 
= 5MB)
使用sp_helpdb查看创建结果:
<!--

Code highlighting produced by Actipro CodeHighlighter (freeware)
http://www.CodeHighlighter.com/

--&gt EXEC  sp_helpdb  ' Accounting '


假设想要做些修改,比如你知道将要向数据库做一个很大的导入,而现在的数据库只有15MB大小,容纳不了这么多东西。如果根据数据库的自动增长功能,以每次5MB的增长量自动扩大数据库,那么服务器至少将进行16次的再分配,既然已经知道数据量将达100MB,何不一次完成?
使用ALTER DATABASE命令可以做到,最简化的语句如下:

<!--

Code highlighting produced by Actipro CodeHighlighter (freeware)
http://www.CodeHighlighter.com/

--&gt 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.’

原文地址:http://www.cnblogs.com/lantionzy/archive/2009/10/16/1584367.html

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/16436858/viewspace-616720/,如需转载,请注明出处,否则将追究法律责任。

转载于:http://blog.itpub.net/16436858/viewspace-616720/

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值