SQL server T-SQL指令(1)---数据库创建与修改

说明:T-SQL指令大小写不敏感,大小写无所谓,建议大写

注释语法

--行注释

/*
多行注释
多行注释
多行注释
*/

参数符号

[ ]表示可选 

<>必填

 或者

sql脚本的创建与使用

新建查询

SQL server T-SQL指令(1)---数据库创建与修改_第1张图片

 SQL server T-SQL指令(1)---数据库创建与修改_第2张图片

保存脚本

按CRTL+S,选择保存路径和文件名 

 导入脚本

SQL server T-SQL指令(1)---数据库创建与修改_第3张图片

选择.sql文件 

SQL server T-SQL指令(1)---数据库创建与修改_第4张图片 

 

数据库创建

简易创建

CREATE DATABASE<数据库名>

带参数高级创建

CREATE DATABASE <数据库名>
[
ON [PRIMARY]
[[,...n]]
[,[,...n]]
]

--其中

::=
{
(
NAME=文件名,
FILENAME='文件路径'
[,SIZE=大小[KB|MB|GB|TB]]
[,MAXSIZE=最大大小[KB|MB|GB|TB]|UNLIMITED]
[,FILEGROWTH=增长策略[KB|MB|GB|TB]|%]
)[,...n]
}

::=
{
    FILEGROUP 文件组名
    [,...n]
}

语法说明

(1)database-name是要创建的数据库的逻辑名称,不能与SQlL Server 中现有的数据库实例名称相冲突,最多可以包含128个字符。
(2)ON指定数据库的数据文件与文件组。
(3)PRIMARY用于在主文件组中指定主文件。如果没有指定PRIMARY,那么CREATE DATABASE语句中列出的第一个文件将成为主文件。
(4)NAME指定文件的逻辑名称。
(5)FILENAME指定文件的物理名称,即创建文件时由操作系统使用的路径和文件名。在执行CREATEDATABASE语句前,指定路径必须存在。
(6)SIZE指定文件的初始容量。如果没有为主文件提供SIZE,数据库引擎将使用model数据库中的主文件的大小。
(7)MAXSIZE指定文件的最大容量。max_size是整数值,默认的单位为MB。如果不指定MAXSIZE,则文件将不断增长直至磁盘被占满。UNLIMITED就表示文件一直增长到磁盘充满。
(8)FILEGROWTH指定文件的自动增量。文件的FILEGROWTH设置不能超过MAXSIZE设置。

文件扩展名
文件类型 拓展名
主文件 .MDF
次要文件 .NDF
日志文件 .LDF

示例:

CREATE DATABASE 学生数据库
--主文件编写
ON	PRIMARY		
(
	
	NAME='学生数据库',--可以说是一个别名或者代号
	FILENAME='E:\数据库\学生数据库.MDF',--文件路径,此处为真实名称,文件扩展MDF
	SIZE=10MB,--初始大小
	MAXSIZE=100MB,--最大容量
	FILEGROWTH=10MB--增长方案

),
--次文件组编写
FILEGROUP 学生数据库次文件组
(
	NAME='学生数据库次文件',--可以说是一个别名或者代号
	FILENAME='E:\数据库\学生数据库.NDF',--文件路径,此处为真实名称,文件扩展NDF
	SIZE=10MB,--初始大小
	MAXSIZE=100MB,--最大容量
	FILEGROWTH=10MB--增长方案
)
--日志文件编写
LOG ON 
(
	NAME='学生数据库log',--可以说是一个别名或者代号
	FILENAME='E:\数据库\学生数据库LOG.LDF',--文件路径,此处为真实名称,文件扩展LDF
	SIZE=10MB,--初始大小
	MAXSIZE=100MB,--最大容量
	FILEGROWTH=10MB--增长方案
)

结果 

SQL server T-SQL指令(1)---数据库创建与修改_第5张图片

数据库查看

sp_helpdb[<数据库名>]

示例

sp_helpdb 学生数据库

SQL server T-SQL指令(1)---数据库创建与修改_第6张图片

数据库修改 

ALTER DATABASE<数据库名>
{
MODIFY NAME=新数据库名
|ADD FILE[,…n ][ TO FILEGROUP 文件组名]
|ADD LOG FILE[,..…n]
|ADD FILEGROUP 文件组名
|REMOVE FILE 日志文件名
|REMOVE FILEGROUP 文件组名
|MODIFY FILE
|MODIFY FILEGROUP 文件组名=新文件组名
}

其中
::=
{
(NAME=日志文件名,
[,NEWNAME=新日志文件名],
[,FILENAME='文件路径']
[,SIZE=大小[KB|MB|GB|TB]]
[,MAXSIZE={最大容量[KB|MB|GB|TB]UNLIMITED]]
[,FILEGROWTH=增长策略[KB|MB|GB]TB|%]]
)[,...n]
}

语法说明:


(1)database_name是要修改的数据库的名称。
(2)MODIFYNAME用于修改数据库的名称,指定新的数据库名称。
(3)ADD FILE添加关联的列表定义的数据文件。
(4)TO FILEGROUP 指定文件添加到的文件组。
(5)ADDLOG FILE添加关联的列表定义的日志文件。
(6)REMOVE FILE删除logical_file_name指定的文件。

(7)REMOVE FILEGROUP删除filegroup_name指定的文件组。
(8)MODIFY FILE修改关联的列表定义的文件。
(9)MODIFY FILEGROUP filegroup name NAME=new filegroup_name为文件组filegroupname指定新的名称。

示例:

修改数据库名为学生数据库2

ALTER DATABASE 学生数据库
MODIFY name=学生数据库2

添加一个学生文件组1

ALTER DATABASE 学生数据库
ADD FILEGROUP 学生文件组1

 向学生文件组1内加入一个次要数据文件学生数据1.NDF

ALTER DATABASE 学生数据库
ADD FILE
(
	NAME='学生数据1',
	FILENAME='E:\数据库\学生数据1.NDF',
	SIZE=10MB,
	MAXSIZE=100MB,
	FILEGROWTH=10MB
)TO FILEGROUP 学生文件组1

修改数据库主数据文件的属性

ALTER DATABASE 学生数据库
MODIFY FILE
(
	NAME = 学生数据库,--指定对象文件名
	NEWNAME = 学生数据库1,--修改文件名
	MAXSIZE=30MB--修改文件容量大小
)

SQL server T-SQL指令(1)---数据库创建与修改_第7张图片

 删除文件和文件组

ALTER DATABASE 学生数据库
REMOVE FILE 学生数据1

ALTER DATABASE 学生数据库
REMOVE FILEGROUP 学生文件组1

注意:只能删除文件和空的文件组

 删除数据库

DROP DATABASE 数据库名

示例

DROP DATABASE 学生数据库

你可能感兴趣的:(数据库,SQL,server,指令,数据仓库,数据库开发,数据库,Sql,server)