Microsoft SQL Server 数据库创建,查看,使用,修改及删除
创建数据库
创建普通数据库
USE [master] GO CREATE DATABASE [MyDataBase] --数据文件 ON PRIMARY ( NAME = N'MyData', FILENAME = N'D:\DataBase\MyData.mdf' , SIZE = 4160KB , MAXSIZE = UNLIMITED, FILEGROWTH = 1024KB ) --日志文件 LOG ON ( NAME %) GO
创建多文件组数据库
USE master GO --多文件组多文件数据库的创建 CREATE DATABASE MyDataBases --主文件组 ON PRIMARY (NAME=N'Data01',FILENAME=N'D:\DataBase\Data01.mdf',SIZE=5120KB,MAXSIZE=UNLIMITED,FILEGROWTH=1024KB), (NAME=N'Data02',FILENAME=N'D:\DataBase\Data02.mdf',SIZE=2028KB,MAXSIZE=2048MB,FILEGROWTH=1MB), --文件组一 FILEGROUP FG1 (NAME%), (NAME%), --文件组二 FILEGROUP FG2 (NAME%) --日志文件 LOG ON (NAME%), (NAME%) GO
查看数据库
目录视图查看数据库信息

--使用sys.databases数据库和文件目录视图查看有关数据库的基本信息 select * from sys.databases --使用sys.database_files查看有关数据库的文件信息 select * from sys.database_files --使用sys.filegroups查看有关数据库的组信息 select * from sys.filegroups --使用sys.master_files查看数据库文件的基本信息和状态信息 select * from sys.master_files --查看数据库详细信息 SP_HELPDB MyDataBase GO

查看数据库空间状况
sp_spaceused go
查看数据库的恢复模式
SELECT N'恢复模式' = DATABASEPROPERTYEX('MyDataBase','Recovery') go
数据库状态
ONLINE在线状态或联机状态,可以执行或数据库访问
OFFLINE离线状态或脱机状态,数据库不能正常使用,可以人工设置,用户可以执行对处于这种状态的数据库文件的移动等处理
RESTORING还原状态,正在还原主文件组的一个或多个文件,这时数据库不能使用
RECOVERING恢复状态,正在恢复数据库。这是一个临时性状态。如果恢复成功,则数据库自动处于在线状态或则失败处于不能正常使用的可疑状态
RECOVERY PENDING恢复未完成状态,恢复过程中缺少系统资源造成的问题状态,数据库不可使用,必须执行其他操作来解决这种问题SUSPECT可疑状态,主文件组可疑或可能被破坏,数据库不能使用,必须执行执行其他操作来解决这种问题
EMERGENCY紧急状态,可以人工设置数据库为该状态,这时数据库处于单用户模式或只读状态,只能由sysadmin固定服务器角色成员访问,主要用于数据库的故障排除
查询数据库当前状态
select name,create_date,state_desc from sys.databases
select DATABASEPROPERTYEX('master','Status') as '当前数据库状态'
数据库文件
主数据文件mdf
辅助数据文件ndf
日志文件ldf
数据库文件状态
文件没有RECOVERING和EMERGENCY状态而新增了一个DEFUNCT状态,用来表示当文件不处于在线时被删除
使用数据库
use DataBase_name go
修改数据库
修改数据库名称

use master go alter database _DataBase modify name = MyDataBase go sp_renamedb 'old_name', 'new_name'

添加数据库文件组

alter database 数据库名称 add filegroup 文件组名称 go alter database 数据库名称 add file (name='辅助数据文件名称', filename='E:\AllMyWork\SqlServer\辅助数据文件名称.ndf', size=10MB, maxsize=30MB, filegrowth=5MB ), (name='辅助数据文件名称', filename='E:\AllMyWork\SqlServer\辅助数据文件名称.ndf', size=10MB, maxsize=30MB, filegrowth=5MB ) to filegroup 文件组名称 go

修改数据库文件组

alter database 数据库名称 modify filegroup 文件组名称 go alter database 数据库名称 modify file (name='辅助数据文件名称', filename='E:\AllMyWork\SqlServer\辅助数据文件名称.ndf', size=10MB, maxsize=30MB, filegrowth=5MB ), (name='辅助数据文件名称', filename='E:\AllMyWork\SqlServer\辅助数据文件名称.ndf', size=10MB, maxsize=30MB, filegrowth=5MB ) to filegroup 文件组名称 go

删除数据库文件组

alter database 数据库名称 remove file 辅助数据文件名称 go alter database 数据库名称 remove file 辅助数据文件名称 go alter database 数据库名称 remove filegroup 文件组名称 go

添加数据库文件

alter database 数据库名称 add file (name='辅助数据文件名称', filename='E:\AllMyWork\SqlServer\辅助数据文件名称.ndf', size=10MB, maxsize=50MB, filegrowth=5% ) go

修改数据库文件
alter database 数据库名称 modify file (name='辅助数据文件名称', maxsize=unlimited, filegrowth=5mb) go
删除数据库文件
alter database 数据库名称 remove file 辅助数据库文件名称 go
添加数据库日志文件

alter database 数据库名称 add log file (name=日志文件名称, filename='E:\AllMyWork\SqlServer\日志文件名称.ldf', size=5MB, maxsize=10MB, filegrowth=1MB ) go

修改数据库日志文件

alter database 数据库名称 modify log file (name=日志文件名称, filename='E:\AllMyWork\SqlServer\日志文件名称.ldf', size=5MB, maxsize=10MB, filegrowth=1MB ) go

删除数据库日志文件
alter database 数据库名称 remove file 日志文件名称 go
删除数据库
use master drop database MyDataBase go