zoukankan      html  css  js  c++  java
  • 1

    约束条件分为以下几种:

    1)非空约束,使用NOT NULL关键字;

    2)默认值约束,使用DEFAULT关键字;

    3)检查约束,使用CHECK关键字;

    4)唯一约束,使用UNIQUE关键字;

    5)主键约束,使用PRIMARY KEY关键字;

    6)外键约束,使用FOREIGN KEY关键字。

    约束是确保数据的完整性,从而阻止不希望插入的数据被录入。

    以下使用一段SQL代码进行演示:

    USE PersonInfo  --使用PersonInfo数据库
    GO
    
    IF EXISTS (SELECT * FROM sys.tables WHERE [name] = 'Employee ')  --如果存在Employee这张表
    DROP TABLE Employee  --则删除
    GO
    
    IF EXISTS(SELECT * FROM sys.tables WHERE [name] = 'Person')  --如果存在Person这张表
    DROP TABLE Person --则删除
    GO
    
    CREATE TABLE Person --创建Person(人物)表
    (
      --索引
      PersonID int IDENTITY(1,1) NOT NULL CONSTRAINT PK_PersonID PRIMARY KEY,-- 创建一个整型、自增为1、标识种子为1、不允许为空、约束条件为主键约束的列PersonID
      --名字
      Name nvarchar(20) NOT NULL, --创建一个Unicode非固定长度(最多存储20个Unicode字符)的列Name
      --年龄
      Age int NOT NULL  CONSTRAINT CK_Age CHECK (Age >= 18  AND Age<=55) ,--创建一个整型、约束条件为检查约束的列Age
      --性别
      Gender bit NOT NULL CONSTRAINT DF_Gender  DEFAULT(1) , --创建一个类型为bit、默认值为1(True)的列Gender
      --身份信息
      [Identity] nchar(18) NOT NULL CONSTRAINT CK_Identity CHECK(LEN([Identity])=18)  
                                    CONSTRAINT  UQ_Identity UNIQUE
      --创建一个非Unicode非固定长度(最多存储18个非Unicode字符)的、约束条件为检查约束的列Identity
    )
    GO
    
    
    CREATE TABLE Employee --创建Employee(雇员)表
    (
        --索引
        EmployeeID int IDENTITY(1,1001) NOT NULL CONSTRAINT PK_ID PRIMARY KEY, -- 创建一个整型、自增为1、标识种子为1001、不允许为空、约束条件为主键约束的列EmployeeID
        --人物索引 
        PersonID int NOT NULL CONSTRAINT FK_PersonID FOREIGN KEY REFERENCES Person(PersonID),
        --职位 
        Post nvarchar(20) NOT NULL,--创建一个Unicode非固定长度(最多存储20个Unicode字符)的列Post
        --入职时间 
        EntryTime datetime CONSTRAINT DF_EntryTime DEFAULT getdate() --创建一个类型为datetime、默认值为取服务器时间的列EntryTime
    )
    GO

    结果:

  • 相关阅读:
    C++中的异常
    Hadoop YARN介绍
    js处理层级数据结构的一些总结
    Python数据结构
    Python的编码风格
    Python流程控制
    java中面试可能会问的问题
    深度学习
    Pescal Triangle Two
    Pascal Triangle
  • 原文地址:https://www.cnblogs.com/cncc/p/5585626.html
Copyright © 2011-2022 走看看