实用知识:SQL 约束(主键、外键)

简单约束

  • 建表时可以给特定的字段设置一些约束条件,常见的约束有
  • NOT NULL :规定字段的值不能为null
  • UNIQUE :规定字段的值必须唯一
  • DEFAULT :指定字段的默认值 (建议:尽量给字段设定严格的约束,以保证数据的规范性)

示例

  • CREATE TABLE T_Person (id integer, name text NOT NULL UNIQUE, age integer NOT NULL DEFAULT 1) ;
  • name 字段不能为 NULL,并且唯一
  • age 字段不能为 NULL,并且默认为1

主键约束

  • 如果 T_Person 表中就 name 和 age 两个字段,而且有些记录的 name 和 age 字段的值都一样时,那么就没法区分这些数据,造成数据库的记录不唯一,这样就不方便管理数据
  • 良好的数据库编程规范应该要保证每条记录的 唯一性,为此,增加 主键约束
  • 每张表都必须有一个主键,用来标识记录的唯一性
  • 主键(Primary Key,简称PK)用来 唯一 地标识某 一条记录
  • 例如t_student可以增加一个id字段作为主键,相当于人的身份证

外键约束

  • 利用 外键约束 可以用来 建立表与表之间 的联系
  • 外键的一般情况是:一张表的某个字段,引用着另一张表的主键字段
    新建一个外键
  • CREATE TABLE T_Student (id integer primary key autoincrement, name text, age integer, class_id integer, constraint fk_student_class foreign key (class_id) references t_class (id));
  • T_Student 表中有一个叫做 fk_t_student_class_id_t_class_id的 外键
  • 这个外键的作用是用 T_Student 表中的 class_id 字段引用 T_Class 表的 id 字段

你可能感兴趣的:(实用知识)