创建表:
CREATE TABLE J_user
(
NewID int identity(1,1) primary key, ---NewID 字段为自动编号,无需手工输入,并且初始值为1每次增长1,为主键;
userid int NOT NULL , ---该字段需要手工输入,并且不能为空;
username nvarchar](20) COLLATE Chinese_PRC_CI_AS NOT NULL , --该字段不能为空,并且指定按中文顺序排序;
useradd nvarchar (50) COLLATE Chinese_PRC_CI_AS NULL --同上,但可以为空
) ON [PRIMARY] --指定该表在 [PRIMARY] 文件组中;
使用alter table 命令声明主键约束
alter table J_user
add constraint ---增加一个约束
PK_J_user Primary key (userid) ---约束名为 PK_J_user,指定userid 为主键
创建外键实例:
alter table J_client ----修改J_client表
add constraint PK_client_user ----创建一个名为PK_client_user的外键约束
foreign key (userid) references J_user(userid) ---指定J_client表的userid 指向J_user表的userid
在创建表的时候创建外键:
create table J_client( ---创建名为J_client的表
ClientID int identity not null primary key, ---并且初始值为1每次增长1,为主键;
userid int not null foreign key references J_user(userid) ---指定userid为外键,指向J_user(userid)
) on [primary] --指定该表在 [PRIMARY] 文件组中;
级联删除:
create table J_client(
ClientID int identity not null primary key,
userid int not null foreign key references J_user(userid)
on delete cascade ---使用级联删除
) on [primary]
Unique约束:
Unique 约束类似于惟一索引或者主键约束,其用途是保证指定列中的每一个值都是惟一的。
CREATE TABLE J_user
(
NewID int identity(1,1) primary key,
userid int NOT NULL ,
username nvarchar](20) unique, ---使用unique约束
useradd nvarchar (50)
) ON [PRIMARY]
为已有的表添加unique约束
alter table J_user
add constraint usernameUnique --增加一个名为 usernameUnique的约束
unique (username) --指定username使用unique约束
下面来个完整的例子:
create table userinfo
(
uid nvarchar(10) primary key,
uName nvarchar(20) unique not null, --唯一约束,非空
uPhone char(11) unique not null,
uSex char(2) check(uSex in('男','女')) not null, --非空,指定性别只能为男、女
uAge int check(uAge between 1 and 50), --指定年龄范围:1--50
comment nvarchar(50) default '这个家伙很懒!什么都没写!' --默认值
)
本文详细介绍了如何在SQL中创建表并应用各种约束条件,包括主键、外键、唯一约束及检查约束等,通过具体示例展示了这些约束的实际用法。
7433

被折叠的 条评论
为什么被折叠?



