SQL入门第五篇——约束

简介: • 约束有:a. 非空约束:not nullb. 主键约束,primary keyc. 唯一约束,uniqued. 外键约束,foreign key

SQL入门第五篇——约束

约束的概念

  • 在创建表的时候,是我们需要加上一些约束来保证表的有效性,完整性
  • 约束有:
  1. 非空约束:not null
  2. 主键约束,primary key
  3. 唯一约束,unique
  4. 外键约束,foreign key
  5. 检查约束:check(mysql不支持,Oracle支持)
  • 非空约束
    这里就是值不能为空,没什么好写的
  • 唯一约束
    例如:name和email两个字段联合起来具有唯一性
    create table t_vip(
    id int,
    name varchar(255) unique,
    email varchar(255) unique
    );
    这张表这样创建是不符合新需求的,原因是:name具有唯一性,email具有唯一性。各自唯一,我们要的是一起唯一
    如果我们需要插入下面这张表的话,肯定会失败,我们需要的是成功
    insert into t_vip(id,name,email) values(1,'zhangsan','2343423@..com');
    insert into t_vip(id,name,email) values(2,'zhangsan','2343423@..com');
    那么需要怎么样创建呢?
    create table t_vip(
    id int,
    name varchar(255),
    email varchar(255),
    unique(name,email)
    );
    这样就可以了
  • 这叫什么呢?第一种创建方式是列级约束第二种是表级约束
    什么时候使用表级约束呢?需要给多个字段联合起来添加某个约束的时候,需要使用表级约束
  • 主键约束
  • 主键约束的相关术语?
  • 主键约束:就是一种约束
  • 主键字段:在字段上添加了主键约束,这样的字段叫主键字段
  • 主键值:主键字段中的每一个值都叫做:主键值
  • 特征:not null + unique(非空且唯一)
    create table t_vip(
    id int primary key,(这种是单一列级主键)
    name varchar(255),
    primary key(id,name)(这种是复合表级主键)
    );
    那么在实际开发中,不建议使用:复合主键,一般都为单一主键,复合主键太复杂.并且创建表的时候要注意表的主键主键只能有一个,主键值建议使用:int bigint char 等类型不建议使用varchar
相关文章
|
3天前
|
SQL 存储 关系型数据库
数据库SQL入门指南
数据库SQL入门指南
|
1天前
|
SQL 数据库 索引
SQL语言入门:如何表达你的数据需求
在数据库的世界里,SQL(Structured Query Language)是一种至关重要的语言,它允许用户与数据库进行交互,执行数据的查询、更新、插入和删除等操作
|
26天前
|
SQL Oracle 关系型数据库
CREATE TABLE 时的 SQL FOREIGN KEY 约束
【7月更文挑战第24天】CREATE TABLE 时的 SQL FOREIGN KEY 约束。
35 5
|
26天前
|
SQL Oracle 关系型数据库
ALTER TABLE 时的 SQL PRIMARY KEY 约束
【7月更文挑战第24天】ALTER TABLE 时的 SQL PRIMARY KEY 约束。
17 3
|
1月前
|
SQL Oracle 关系型数据库
CREATE TABLE 时的 SQL FOREIGN KEY 约束
【7月更文挑战第19天】CREATE TABLE 时的 SQL FOREIGN KEY 约束
30 8
|
26天前
|
SQL Oracle 关系型数据库
CREATE TABLE 时的 SQL PRIMARY KEY 约束
【7月更文挑战第24天】CREATE TABLE 时的 SQL PRIMARY KEY 约束。
27 2
|
1月前
|
SQL Oracle 关系型数据库
SQL CHECK 约束
【7月更文挑战第19天】SQL CHECK 约束。
28 5
|
1月前
|
SQL Oracle 关系型数据库
SQL UNIQUE 约束
【7月更文挑战第18天】SQL UNIQUE 约束。
33 6
|
1月前
|
SQL
SQL NOT NULL 约束
【7月更文挑战第18天】SQL NOT NULL 约束。
26 6
|
1月前
|
SQL Oracle 关系型数据库
SQL PRIMARY KEY 约束
【7月更文挑战第19天】SQL PRIMARY KEY 约束。
30 4