创建表

本文详细介绍了如何在SQL中创建表并应用各种约束条件,包括主键、外键、唯一约束及检查约束等,通过具体示例展示了这些约束的实际用法。

创建表:
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 '这个家伙很懒!什么都没写!'    --默认值
)

 

 

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值