SQL_3th_T-SQL语句创建和删除数据库、添加和删除约束

时间:2021-03-11 00:37:46

在SQL Server 2008 R2中点击新建查询,输入如下代码,选中代码段,并点击执行,就能运行选中区域代码:

--使用数T-SQL语句来创建数据库
create database Students
on
(
name='Students',--这是数据文件的逻辑名称
filename='Q:\2. SQL\project\Students.mdf',--这是主数据文件的物理名称
size=3mb,--主数据文件的初始大小
maxsize=50mb,--主数据文件的最大增长值
filegrowth=5%--增长率
)
log on
(
name='Students_log',
filename='Q:\2. SQL\project\Students_log.ldf',
size=3mb,
maxsize=50mb,
filegrowth=10%
)

--一条命令创建数据库
create database Students2

--删除数据库
drop database Students2

use Students
--创建学生信息表
create table StuInfo
(
stuID int not null,
stuName nvarchar(10) not null,
stuSex nchar(2) not null
)

--删除数据表
drop table StuInfo

--为学生信息添加约束
--添加主键约束
alter table StuInfo
add constraint PK_stuID
primary key(stuID)

--添加唯一约束
alter table StuInfo
add constraint UQ_stuName
unique(stuName)

--添加默认约束
alter table StuInfo
add constraint DF_stuSex
default('男') for stuSex

use Students
--建立一个学生成绩表
create table stuScores
(
scoreID int not null,
stuID int not null,
subject nvarchar(10) not null,
score int not null,
)


--添加一个主键约束
alter table stuScores
add constraint PK_scoreID
primary key(scoreID)


--添加一个外键约束
alter table stuScores
add constraint FK_stuID
foreign key(stuID) references stuInfo(stuID)


--添加检查约束
alter table stuScores
add constraint CK_score
check(score>=0 and score<=100)


--创建学生信息表的时候添加约束
create table stuInfo2
(
stuID int primary key identity(1000,10),--定义主键,定义标识列
stuName nvarchar(10) unique not null,--定义唯一约束
stuSex nchar(2) default('男')--定义默认约束
)


--创建一个学生分数表时添加约束
create table stuScores2
(
scoreID int primary key,--定义主键
stuID int references stuInfo2(stuID),--定义外键约束
subject nvarchar(10) not null,
score int check(score>=0 and score<=100)
)


--删除约束
alter table stuInfo
drop constraint UQ_stuName

--删除默认约束
alter table stuScores2
drop constraint CK__stuScores__score__1273C1CD