创建用户表添加删除更新约束(三)

创建用户表

使用SQL语句为指定的表添加约束的方法有两种:
       第一种是使用CREATE TABLE 语句在创建表结构的同时添加相关约束
       第二种是使用ALTER TABLE语句在已经创建的表中添加约束。
通常建议使用第二种方式

使用CREATE TABLE 语句在创建表结构的同时添加相关约束
CREATE TABLE UserInfo
(
    ID INT IDENTITY(1,1)  NOT NULL ,                   --编号  自动编号
    UserName NVARCHAR(10) NOT NULL,                     --用户姓名
    UserSex NVARCHAR(2) NOT NULL,                    --性别
    PersonID VARCHAR(18)  NOT NULL ,                 --身份证号 唯一
    Telephone VARCHAR(13) NOT NULL,                     --电话
    UserAddress NVARCHAR(50),                         --住址
)
CREATE TABLE UserOrder
(
    UserId INT IDENTITY(1,1) NOT NULL               --编号  自动编号
)

--添加约束
--ALTER  TABLE 表名
--ADD CONSTRAINT 约束名 约束类型 具体的约束说明
--1.主键约束(将Id作为主键)
alter table UserInfo
add constranint PK_ID primary key (ID)
--2.唯一约束(身份证号唯一)
alter table UserInfo
add constranint UQ_PersonID unique(PersonID)
--3.默认约束(如果地址不填 默认为“地址不详”)
alter table UserInfo
add constraint DF_UserAddress default('地址不详') for UserAddress
--4.检查约束(姓名男or女)
alter table UserInfoadd 
add constraint CK_UserSex check (UserSex='男' or UserSex='女')
--5.添加外键约束 (主表UserInfo和从表UserOrder建立关系,关联字段UserId)
alter table UserOrder
add constraint FK_UserId_UserId foreign key(UserId)references UserInfo(UserId)

 

--创建用户表
CREATE TABLE UserInfo
(
    ID INT IDENTITY(1,1)  NOT NULL PRIMARY KEY,           --编号 主键 自动编号
    UserName NVARCHAR(10) NOT NULL CHECK(UserSex='男' or UserSex='女'),                          --用户姓名
    UserSex NVARCHAR(2) NOT NULL,                        --性别
    PersonID VARCHAR(18)  NOT NULL UNIQUE,                  --身份证号 唯一
    Telephone VARCHAR(13) NOT NULL,                           --电话,格式为XXXX-XXXXXXXX或11位手机号
    UserAddress NVARCHAR(50) DEFAULT '地址不详',                                   --住址
    ----CHECK(UserSex='男' or UserSex='女'),
    ----PRIMARY KEY(ID)
    ----UNIQUE(PersonID)
    ----CONSTRAINT 约束名 约束类型(列约束条件,列约束条件)
)
CREATE TABLE UserOrder
(
    UserId INT IDENTITY(1,1) NOT NULL FOREIGN KEY REFERENCES UserInfo(ID)           --编号  自动编号
    ----FOREIGN KEY(UserId) REFERENCES UserInfo(ID)
)

--删除约束
--ALTER TABLE 表名
--DROP CONSTRAINT 约束名

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值