SQL 约束constraints

1.约束constraints用于限制加入表的数据类型

2.创建表时规定约束,也可以创建后修改表加约束(Alter table)

3.常见约束:

  • NOT NULL——非空,即如果不向字段添加值,就无法插入新记录或者更新记录
        • 例:
          CREATE TABLE Persons
          (
          Id_P int NOT NULL,
          LastName varchar(255) NOT NULL,
          FirstName varchar(255),
          Address varchar(255),
          City varchar(255)
          )
  • UNIQUE——唯一标识。
          UNIQUE 和 PRIMARY KEY 约束均为列或列集合提供了唯  一性的保证。但每个表可以有多个 UNIQUE 约束,但是每个表只能有一个 PRIMARY KEY 约束。
        例:
CREATE TABLE Persons
(
Id_P int NOT NULL UNIQUE,
LastName varchar(255) NOT NULL,
FirstName varchar(255),
Address varchar(255),
City varchar(255)
)  
或者
ALTER TABLE Persons
ADD UNIQUE (Id_P)

或者
ALTER TABLE Persons
DROP CONSTRAINTS uc_PersonID
 
  • PRIMARY KEY
    •   主键列不能包含NULL值
    • CREATE TABLE Persons
      (
      Id_P int NOT NULL PRIMARY KEY,
      LastName varchar(255) NOT NULL,
      FirstName varchar(255),
      Address varchar(255),
      City varchar(255)
      )
  • FOREIGN KEY
  • CHECK——用于限制列中的值的范围
    • 如果对单个列定义 CHECK 约束,那么该列只允许特定的值

      如果对一个表定义 CHECK 约束,那么此约束会在特定的列中对值进行限制

  • DEFAULT——用于向列中插入默认值
      • 例如:使用类似 GETDATE() 这样的函数,DEFAULT 约束也可以用于插入系统值:  
        CREATE TABLE Orders
        (
        Id_O int NOT NULL,
        OrderNo int NOT NULL,
        Id_P int,
        OrderDate date DEFAULT GETDATE()
        )
          
posted @ 2020-07-08 11:00  柒久酒  阅读(254)  评论(0编辑  收藏  举报