sqlserver建库建表建约束,删库删表删约束的示例总结
1.创建一个数据库catedb,保存在本地D盘下面的DB中,主数据文件的初始大小为5MB,最大为200MB,增长率为10%,日志文件的初始大小为3MB,无限制增长,其增长率为2MB,请使用sql语句检测master数据库中是否存在该数据库,如果存在则删之再建。
use master
if exists (select * from sysdatabases where name = 'catedb')
--删除
drop database catedb
go
create database catedb
on
(
name = 'catedb_data',
filename = 'd:\db\catedb_data.mdf',
size = 5MB,
maxsize = 200MB,
filegrowth = 10%
)log on
(
name = 'catedb_log',
filename = 'd:\db\catedb_log.ldf',
size = 3MB,
filegrowth = 2MB
)
2.在catedb数据库中,新建表,信息如下:
表名:users
列有:
列名 | 类型 | 说明 |
---|---|---|
uid | int | 主键,自增,非空 |
uname | varchar(50) | 用户名,唯一的 |
usex | varchar(2) | 性别,只有男和女 |
uaddress | varchar(50) | 地址,默认为山东济南 |
uroleid | int | 角色编号,外键 |
use catedb
go
if exists (select * from sysobjects where name = 'users')
--删除表
drop table users
--新建表
create table users
(
uid int identity(1,3) primary key ,
uname varchar(50) not null,
usex varchar(2) not null,
uaddress varchar(50) not null,
uroleid int not null
)
3.新增几条测试数据给users表中
insert into users values('琴莘莘','女','山东济南',1);
insert into users values('范啸天','男','山东济南',2);
insert into users values('王炎霸','男','山东济南',3);
insert into users values('唐三娘','女','山东济南',4);
insert into users values('顾子敬','男','山西吕梁',5);
4.给users表中的uid列添加主键约束。
alter table users
add constraint pk_uid primary key (uid);
5.给users表的uname列添加唯一约束
alter table users
add constraint uq_uname unique (uname);
6.给users表的uaddress列添加默认约束,默认为山东济南
alter table users
add constraint df_uaddress default ('山东济南') for uaddress;
7.给users表的usex添加检查约束,性别只有男和女
alter table users
add constraint ck_usex check (usex ='男' or usex ='女');
8.给users表的uroleid添加外键约束,外键表为role,列为rid
alter table users
add constraint fk_uroleid foreign key (uroleid) references role (rid);
9.删除约束(users表中的fk_uid)
alter table users
drop constraint pk_uid;
10.添加约束时,不对数据表中的数据进行检查。
alter table users with nocheck
add constraint ck_usex check(usex = '男' or usex = '女')
往期精彩