• SQLite 约束


     

    约束是在表的数据列上强制执行的规则。这些是用来限制可以插入到表中的数据类型。这确保了数据库中数据的准确性和可靠性。

    约束可以是列级或表级。列级约束仅适用于列,表级约束被应用到整个表。

    以下是在 SQLite 中常用的约束。

    • NOT NULL 约束:确保某列不能有 NULL 值。

    • DEFAULT 约束:当某列没有指定值时,为该列提供默认值。

    • UNIQUE 约束:确保某列中的所有值是不同的。

    • PRIMARY Key 约束:唯一标识数据库表中的各行/记录。

    • CHECK 约束:CHECK 约束确保某列中的所有值满足一定条件

    CREATE TABLE COMPANY(
       ID INT PRIMARY KEY     NOT NULL,
       NAME           TEXT    NOT NULL,
       AGE            INT     NOT NULL,
       ADDRESS        CHAR(50),
       SALARY         REAL
    );

    如上NOT NULL约束,创建表COMPANY,要求ID,NAME,AGE字段不能为空。

    CREATE TABLE COMPANY_DEFAULT(
       ID INT PRIMARY KEY     NOT NULL,
       NAME           TEXT    NOT NULL,
       AGE            INT     NOT NULL,
       ADDRESS        CHAR(50),
       SALARY         REAL    DEFAULT 50000.00
    );

    如上DEFAULT约束,默认SALARY为50000.00。

    CREATE TABLE COMPANY(
       ID INT PRIMARY KEY     NOT NULL,
       NAME           TEXT    NOT NULL,
       AGE            INT     NOT NULL UNIQUE,
       ADDRESS        CHAR(50),
       SALARY         REAL    DEFAULT 50000.00
    );

    如上UNIQUE约束,设置AGE字段唯一,表里面不能出现两个相同年龄的内容,并且不能为空。

    CREATE TABLE COMPANY(
       ID INT PRIMARY KEY     NOT NULL,
       NAME           TEXT    NOT NULL,
       AGE            INT     NOT NULL,
       ADDRESS        CHAR(50),
       SALARY         REAL
    );

    如上PRIMARY约束,设置ID为主键,用来唯一标识数据库表中的各行/记录。

    注意:

    我们使用主键来引用表中的行。可通过把主键设置为其他表的外键,来创建表之间的关系。由于"长期存在编码监督",在 SQLite 中,主键可以是 NULL,这是与其他数据库不同的地方。

    主键是表中的一个字段,唯一标识数据库表中的各行/记录。主键必须包含唯一值。主键列不能有 NULL 值

    一个表只能有一个主键,它可以由一个或多个字段组成。当多个字段作为主键,它们被称为复合键

    如果一个表在任何字段上定义了一个主键,那么在这些字段上不能有两个记录具有相同的值。

    CREATE TABLE COMPANY3(
       ID INT PRIMARY KEY     NOT NULL,
       NAME           TEXT    NOT NULL,
       AGE            INT     NOT NULL,
       ADDRESS        CHAR(50),
       SALARY         REAL    CHECK(SALARY > 0)
    );

    如上CHECK约束来限制工资不能小于等于0,必须大于0。

  • 相关阅读:
    POJ2778 DNA Sequence AC自动机+矩阵二分
    POJ1204 Word Puzzles AC自动机 多串匹配
    与失散已久的小学同桌QQ聊天
    ZC公司员工评分系统——后台查询合成DataTable
    软考(2)编译原理
    GCT考试复习
    为自己加油!!!
    ZC公司员工评分系统——前台排版算法
    员工评分系统现场发布小感
    软考(3)操作系统
  • 原文地址:https://www.cnblogs.com/androidsuperman/p/6274027.html
Copyright © 2020-2023  润新知