SQL Server

创建表约束

先创建如下两张表

--Jeremy 
--2020.02.07 
--SQL Server表数据添加约束
--UserInfo表

USE AspNet --指向当前所操作的数据库名称,这里即AspNet
GO
--为用户表添加约束
ALTER TABLE UserInfo
ADD CONSTRAINT PK_UserId        PRIMARY KEY (UserId),--主键约束
    --检查约束:密码长度大于等于3
    CONSTRAINT CK_UserId        CHECK(LEN(UserPwd)>=3),
    --检查约束:性别只能是字符男或女
    CONSTRAINT CK_UserGender    CHECK(UserGender='' OR UserGender=''),
    --检查约束:邮箱中必须包含@符号
    CONSTRAINT CK_UserEmail    CHECK(UserEmail LIKE '%@%'),
    --检查约束:删除标识只能是0或者1
    CONSTRAINT CK_DelFlag        CHECK(DelFlag='0' OR DelFlag='1'),
    --默认约束:删除标识为NULL时,默认为0
    CONSTRAINT DF_DelFlag        DEFAULT(0) FOR DelFlag,
    --默认约束:注册日期为NULL时,默认为当前系统时间
    CONSTRAINT DF_RegDate        DEFAULT(GETDATE()) FOR RegDate
GO

GO
ALTER TABLE UserDetail
ADD CONSTRAINT PK_UserDetail        PRIMARY KEY (UserDetailID),--主键约束
    --外键约束:UserID内容必须在UserInfo表的UserID中存在
    CONSTRAINT FK_UserID            FOREIGN KEY(UserID) REFERENCES UserInfo(UserID)     
GO

  作者:Jeremy.Wu
  出处:https://www.cnblogs.com/jeremywucnblog/
  本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。

原文地址:https://www.cnblogs.com/jeremywucnblog/p/12273439.html