alter database database_name
{
modify name=new_database_name
| Add file<filespec> [ ,...n ] [ TO filegroup { filegroup_name } ]
| Add log file <filespec> [ ,...n ]
| remove file logical_file_name
|modify file <filespec>
}
<filespec>::=
(
name=logical_file_name
[ , newname = new_login_name ]
[ , fileName = {‘os_file_name‘ | ‘filestream_path‘} ]
[ , size = size[ KB | MB | GB | TB] ]
[ , MaxSize = {max_size [ KB | MB |GB |TB] | UNLIMITED} ]
[ , FILEGROWTH = growth_increment [ KB | MB |GB | TB | %] ]
[ , offline ]
);
上述语法解释如下:
database_name:要修改的数据库的名称;
modify name:指定新的数据库名称;
Add file:向数据库中添加文件。
to filegroup{filegroup_name}:将指定文件添加到文件组。filegroup_name为文件组名称.
Add log file:将要添加的日志文件添加到指定的数据库
remove file logical_file_name:从SQL Server的实例中删除逻辑文件并删除物理文件。除非文件为空,否则无法删除文件。logical_file_name是在Sql Server 中引用文件时所用的逻辑名称。
modify file:指定应修改的文件,一次只能更改一个<filespec>属性。必须在<filespec>中指定name,以标识要修改的文件。如果指定了size,那么新大小必须比文件当前大小要大。
--使用T_SQL语句修改数据库文件的初始大小:
--将sample_db数据库中的主数据文件的初始大小修改为15MB:
alter database sample_db
modify file
(
name=‘sample_db‘,
size=15MB
);
注意:修改数据库文件的初始大小时,指定的size的大小必须大于或等于当前大小,如果小于,代码不能执行.
--使用T_SQL语句增加数据库容量:
--增加sample_db数据库的容量,如下:
alter database sample_db
modify file
(
name=‘sample_db‘,
maxsize=50MB
);
go
--使用T_SQL缩减数据库容量:
--缩减 sample_db数据库的容量,如下:
alter database sample_db
modify file
(
name =‘sample_db‘,
MAXSIZE=15MB
);
go
三、查看数据库信息
Sql Server中可以使用多种方式查看数据库信息,例如使用目录视图,函数,存储过程等。
1.使用目录视图:
可以使用如下的目录视图查看数据库的基本信息。
a.使用sys.database_files查看有关数据库文件的信息
b.使用sys.filegroups查看有关数据库组的信息。
c.使用sys.master_files 查看数据库文件的基本信息和状态信息。
d.使用sys.databases 数据库和文件目录视图查看有关数据库的基本信息。
eg:
select * from sys.database_files;
select * from sys.filegroups;
select * from sys.master_files;
select * from sys.databases;
2.使用函数:
如果要查看指定数据库中的指定选项信息时,可以使用DataBaseProperTyex()函数,该函数每次只返回一个选项的信息.
eg:要查看test数据库的状态信息,输入如下语句:
use test
go
select databasepropertyex(‘test‘,‘Status‘) as ‘test数据库状态‘
注:上述代码中DataBaseProperTyex语句中第一个参数表示要返回信息的数据库,第二个参数表示要返回数据库的属性表达式,其他的查看属性参数如下:
3.使用系统存储过程:
除了上述的目录视图和函数外,还可以使用存储过程 sp_spaceused显示数据库使用和保留的空间。
sp_helpdb存储过程查看所有数据库的基本信息
4.使用图形化工具查看,大家都会,就不罗嗦了。
四:使用T_SQL修改数据库名:
--使用alter database 语句修改数据名称,语法如下:
alter database old_database_name
modify name=new_database_name
使用T_SQL删除数据库:
当数据库不再需要时,为了节省空间,可以将他们从系统中删除。
drop database database_name[ , ...n ]
eg:drop database test;
注意:
1.删除数据库时一定要慎重,因为系统无法轻易恢复被删除的数据,除非做过数据库的备份.另外,特别注意,千万不能删除系统数据库( master-->数据库服务器的核心;
model-->创建数据库的模版;
msdb-->提供运行SQL Server Agent工作的信息;
tempdb-->Sql Server中的一个临时数据库,用于存放临时对象和中间结果,Sql server关闭后,该数据库中的内容被清空,每次重新启动服务器后tempdb数据库将被重建.
),否则会导致sql server服务器无法启动.
2.并不是所有的数据库在任何时候都可以被删除,只有处于正常状态下的数据库,才能使用drop语句删除。当数据库处于一下状态时不能删除:a.数据库正在使用;b.数据库正在恢复; c.数据库包含用于复制的对象。