zoukankan      html  css  js  c++  java
  • Sql Server 数据库教程四 、数据类型约束

    SQL 约束 用于限制加入表的数据类型。

    注意:可以通过在创建表时规定约束(通过CREATE TABLE 语句),或者在表创建之后也可以通过(ALTER TABLE 语句)。

    主要的约束有以下几点:

    • NOT NULL
    • UNIQUE
    • PRIMARY KEY
    • FOREIGN KEY
    • CHECK
    • DEFAULT

    1>NOT NULL

    SQL NOT NULL 约束用于强制列不接受 NULL 值

    例如,在创建一个Person表中,设置ID_P这一列的数据不接受空值,这意味着,如果不为该字段添加值,那么将无法插入和更新该列的记录,代码如下:

    CREATE TABLE Persons
    (
    Id_P int NOT NULL,
    LastName varchar(255) NOT NULL,
    FirstName varchar(255),
    Address varchar(255),
    City varchar(255)
    )

    2>UNIQUE

    SQL UNIQUE 约束,用于约束该唯一标识数据库表中的每条记录。

    例如,在Persons 表中,规定ID_P这一列的数据为不重复的int型数据,代码如下:

    CREATE TABLE Persons
    (
    Id_P int NOT NULL UNIQUE,
    LastName varchar(255) NOT NULL,
    FirstName varchar(255),
    Address varchar(255),
    City varchar(255)
    )

    那么意味着ID_P这一列的数据不能为空值,并且都是唯一标识。

    3>PRIMARY KEY  

    PRIMARY KEY 约束唯一标识数据库表中的每条记录.

    注意:

    主键必须包含唯一的值.

    主键列不能包含 NULL 值.

    每个表都应该有一个主键,并且每个表只能有一个主键.

    例如,在Persons表中,设置ID_P为主键,那么ID_P将作为每条记录的唯一标识,代码如下:

    CREATE TABLE Persons
    (
    Id_P int NOT NULL PRIMARY KEY,
    LastName varchar(255) NOT NULL,
    FirstName varchar(255),
    Address varchar(255),
    City varchar(255)
    )

    4>FOREIGN KEY

    一个表中的 FOREIGN KEY 指向另一个表中的 PRIMARY KEY。  

    FOREIGN KEY 也被称之为外键,让我们用一个例子来说明主键和外键的关系。

    请看两个表:

    注意:

    "Orders" 中的 "Id_P" 列指向 "Persons" 表中的 "Id_P" 列。

    "Persons" 表中的 "Id_P" 列是 "Persons" 表中的 PRIMARY KEY。

    "Orders" 表中的 "Id_P" 列是 "Orders" 表中的 FOREIGN KEY。

    FOREIGN KEY 约束用于预防破坏表之间连接的动作。

    FOREIGN KEY 约束也能防止非法数据插入外键列,因为它必须是它指向的那个表中的值之一。

    示例代码:

    CREATE TABLE Orders
    (
    Id_O int NOT NULL PRIMARY KEY,
    OrderNo int NOT NULL,
    Id_P int FOREIGN KEY REFERENCES Persons(Id_P)
    )
  • 相关阅读:
    autopoi升级到4.0版本修改方法
    JeecgBoot的前端Form升级为FormModel用法(支持 v-model 绑定)
    如何设计一张带二维码的打印报表?
    低代码概念报表-JimuReport1.1.09 版本发布
    分组报表怎么做,积木报表十分钟搞定!
    JeecgBoot 2.4.2 积木报表版本发布,基于SpringBoot的低代码平台
    低代码开发是如何解决企业招聘技术人才难题?
    JimuReport积木报表1.1.05 版本发布,免费的企业级 Web 报表工具
    Docker安装elasticsearch 7.7.0
    Jeecg 文件上传漏洞补丁说明
  • 原文地址:https://www.cnblogs.com/vpersie2008/p/4234354.html
Copyright © 2011-2022 走看看