sqlserver DDL语言建库建表建约束

-- 判断某个数据库是否存在,存在就删除时的语句
-- 创建数据库是必须先使用master数据库
-- if 判断
-- db_id 数据库ID名称
-- is not null 判断是否为空
-- drop 删除关键字
-- database 数据库关键字
-- 比如
-- 判断学校数据库是否存在,存在就删除

use master
go
if db_id('student') is not null
    drop database student
go

-- 创建数据库时的语句
-- 创建数据库是必须先使用master数据库
-- create 创建数据库关键字
-- database 表示创建为数据库
-- on 表示数据库的具体信息
-- name 数据库名 用法:name=‘数据库名称’
-- filename 数据库文件名 用法:filename=‘文件的绝对路径,文件的后缀为(.mdf)’
-- size 数据库初始大小,单位为MB 用法:size=初始大小
-- maxsize 数据库的最大大小 用法:maxsize=数据库的最大大小
-- filegrowth 数据库文件大小增长速度 用法:filegrowth=增长的速度
-- 比如
-- 创建学校数据库

use master
go
create database school on
(
-- 数据库名为student
name=‘student’,
-- 文件名为
filename='D:\\db\student.mdf',
-- 初始大小为5,单位为MB
size=5,
-- 最大大小为20,单位为MB
maxsize=20,
-- 数据库文件大小的增长速度为10%
filegrowth=10%
)
go

-- 创建表时的各种约束
-- 创建表时必须先使用需要的数据库
-- primary key 主键 用法:直接跟在字段数据类型后
-- default 默认值 用法:字段数据类型后,default(字段默认值)
-- unique 唯一键 用法:字段数据类型后
-- check 检查约束 用法:字段数据类型后 check(约束的具体内容)
-- not null 非空约束 用法:直接跟在字段数据类型后
-- identity 自增 用法:字段数据类型后 identity(自增种子 英文逗号 自增量)
-- references 外键关系 用法:字段数据类型后 references [主表名](主表的外键字段)
-- 比如

-- 在学校数据库创建班级表
use school
go
create table classes
(
-- 编号 整型 主键 自增(种子为1,增量为1)
ID int primary key identity(1,1),
-- 班级名 nvarchar 唯一 非空
className nvarchar(50) unique not null
)
go
-- 在学校数据库创建学生表
create table student
(
-- 编号 整型 主键 自增(种子为1,增量为1)
ID int primary key identity(1,1),
-- 学号 varchar 唯一 非空
stuID nvarchar(10) unique not null,
-- 学生名 nvarchar 非空
stuName nvarchar(20) not null,
-- 性别 nvarchar 检查约束为 只能为男或女 默认为男
stuSex nvarchar(4) check(stuSex in('男','女')) default('男'),
-- 班级编号 整型 外键班级表班级编号
classID int references [classes](ID)
)
go
-- 在学校数据库创建班级表
use school
go
create table classes
(
-- 编号 整型 主键 自增(种子为1,增量为1)
ID int primary key identity(1,1),
-- 班级名 nvarchar 唯一 非空
className nvarchar(50) unique not null
)
go
-- 在学校数据库创建学生表
create table student
(
-- 编号 整型 主键 自增(种子为1,增量为1)
ID int primary key identity(1,1),
-- 学号 varchar 唯一 非空
stuID nvarchar(10) unique not null,
-- 学生名 nvarchar 非空
stuName nvarchar(20) not null,
-- 性别 nvarchar 检查约束为 只能为男或女 默认为男
stuSex nvarchar(4) check(stuSex in('男','女')) default('男'),
-- 班级编号 整型 外键班级表班级编号
classID int references [classes](ID)
)
go
上一篇:Sql语句注册公司的事务


下一篇:Flowable 数据库表结构 ACT_HI_PROCINST