Alter database
说明 增加分配给数据库的空间量
语法 alter database database_name
参数 on 表示数据库扩展的大小和位置。如果日志和数据在不同的设备片段上,则对数据设备使用该句子,对日志设备使用log on子句。
Default 表示alter database可在任何缺省数据库设备上放置数据库扩展。要制定数据库扩展的大小但是不能制定确定确切的位置使用下面的命令
On default =size
要更改数据库设备的状态为缺省,使用系统过程sp_diskdefault
Database-device是在其上放置数据库扩展的数据库设备的名称。一个数据库可以占用多个数据库设备,每个设备具有不同的空间量。用disk init向adptive server添加数据库设备。
Size 是分配给数据库扩展的空间量。大小可以使用以下单位指示符:“k”(千字节)或者“m”(兆字节)和“g”(千兆字节)、sybase建议使用时总是包含单位指示符。
Log on 表示要为数据库的事物日志制定额外的空间。Log on子句使用与on子句相同的缺省值。
With override
强制adptive server接受设备规格。即使他们在同一设备上混合了数据和事物日志。由此危害了数据库以分钟计算的恢复能力。如果试图在同一设备上混合日志和数据而不使用该句子,则alter database命令执行失败。如果混合了日志和数据,并使用with override 尽管受到警告,但是命令仍然执行成功。
For load
只在creat database for load 后使用,此时必须重新创建数据库(从转储装载)的空间分配和片段使用。
For proxy_updata 强制代理数据库中代理表的重新同步。
用法限制
如果不使用单位指示符,引号为可选符号。但是,如果使用单位指示符,则必须使用引号。
如果所有固定长度列加上行开销的总大小大于锁定方案和页大小的许可范围,adaptive server报告错误
如果使用可变长度列创建一个偏移超过8191字节的dol表,则无法向该列添加任何行。
由于adaptive server为256个逻辑页的块中create database和alter database的数据库分配了空间,这些命令将指定大小下舍到最近的分配单元的倍数。
可以将size指定为float数据类型但大小将下舍到最近的分配单元的倍数。
虽然adaptive server确实在下面环境中创建表,但当执行dml操作时,将收到有关大小限制的错误。
如果带有可变长度列的行的总行宽超过最大列的大小
如果单个可变长度的长度超过最大列的大小
对于dol表。如果任何可变长度列的偏移超过8191字节的限制
如果adaptive server不能分配所请求的空间,它会尽可能的分配接近每个设备所请求的空间并输出一条消息。通知每个数据库设备上分配的空间量。
数据库的小
要使用alter database 必须使用master数据库或者在master数据库中执行存储过程。