SQL语句
一、数据库
1、创建数据库(CREATE)
/*语法格式*/
CREATE DATABASE 数据库名称
ON
(
NAME=数据文件逻辑名称,
FILENAME='PATH',
SIZE=数据文件初始大小,
MAXSIZE=数据文件最大容量,/*UNLIMITED:无限制增长*/
FILEGROWTH=数据文件自动增长容量
)
LOG ON
(
NAME=日志逻辑名称,
FILENAME=PATH,
SIZE=日志文件初始大小,
MAXSIZE=日志文件最大容量,
FILEGROWTH=日志自动增长容量
)
/*例*/
CREATE DATABASE T
ON
(
NAME=T,
FILENAME='E:\Database\TData.mdf',
SIZE=10,
MAXSIZE=500,
FILEGROWTH=10
)
LOG ON
(
NAME=T_Log,
FILENAME='E:\Database\TData.ldf',
SIZE=5,
MAXSIZE=500,
FILEGROWTH=5
)
2、修改数据库(ALTER)
/*语法格式*/
ALTER DATABASE 数据库名称
ADD FILE( /*向数据库中添加数据文件*/
NAME=文件逻辑名称, /*必选*/
[NEWNAME=新文件逻辑名称,]/*任选*/
[SIZE=初始文件大小,]
[MAXSIZE=文件最大容量,]
[FILEGROWTH=文件自动增长容量]
)
[,...n]/*可添加多个*/
ADD LOG FILE( /*向数据库中添加日志文件*/
NAME=文件逻辑名称,
[NEWNAME=新文件逻辑名称,]
[SIZE=初始文件大小,]
[MAXSIZE=文件最大容量,]
[FILEGROWTH=文件自动增长容量]
)
[,...n]/*可添加多个*/
REMOVE FILE 文件逻辑名称/*从数据库中删除逻辑文件,并删除物理文件;
若文件不为空,则无法删除*/
MODIFY FILE( /*指定要修改的文件*/
NAME=文件逻辑名称,
[NEWNAME=新文件逻辑名称,]
[SIZE=初始文件大小,]
[MAXSIZE=文件最大容量,]
[FILEGROWTH=文件自动增长容量]
)
/*关于文件组的修改*/
ADD FILEGROUP 文件组名
REMOVE FILEGROUP 文件组名
MODIFY FILEGROUP 文件组名{ /*属性*/
READ_ONLY | READ_WRITE, /*只读 / 读写*/
| DEFAULT, /*默认文件组*/
| NAME = 新文件组名}
}
3、删除数据库(DROP)
/*语法格式*/
DROP DATABASE 数据库名称[,...n]/*可一次删除多个*/
/*例*/
DROP DATABASE T
二、数据表
1、创建表(CREATE)
(1) 基本格式
CREATE TABLE S
(
/*name 类型 约束*/
SNO VARCHAR(6),
SN NVARCHAR(10),
Sex NCHAR(1) DEFAULT '男',
Age INT,
Dept NVARCHAR(20),
)
(2) 约束
语法格式:[CONSTRAINT <约束名>] <约束类型>
a. NULL / NOT NULL 约束
NULL 不是0,也不是空白,指不确定、没有数据,只用于定义列约束
CREATE TABLE S
(
SNO VARCHAR(6) CONSTRAINT S_CON NOT NULL,
CNO VARCHAR(6) NOT NULL /*省略约束名称*/
)
b. UNIQUE (唯一约束)
UNIQUE 约束用于指明某一列或多个列组合上取值必须唯一,被约束的列称为唯一键
考虑因素:
UNIQUE约束字段允许为NULL
一个表中允许存在多个空值
可以把UNIQUE约束在多个字段上
UNIQUE约束用于强制在指定字段上创建一个UNIQUE索引,缺省为非聚集索引
CREATE TABLE T
(
SN NVARCHAR(10) CONSTRAINT SN_UNIQ UNIQUE,
CNO NVARCHAR(10) UNIQUE /*省略约束名称*/
CONSTRAINT S_C_UNIQ UNIQUE(SN,CNO