精华内容
下载资源
问答
  • 唯一约束主键约束区别

    千次阅读 2017-10-18 23:42:00
    主键又称主键约束,它也是一种约束,看下它和唯一约束的创建语法: alter table Person add constraint PK_Id primary key (Id) alter table Person add constraint UQ_Name unique (Name) 主键和唯一...
    主键又称主键约束,它也是一种约束,看下它和唯一约束的创建语法:

    alter table Person add constraint PK_Id primary key (Id)

    alter table Person add constraint UQ_Name unique (Name)


    主键和唯一约束都要求字段值唯一,除此外,它们还有如下区别:
    ·同一张表只能有一个主键,但能有多个唯一约束;
    ·主键字段值不能为NULL,唯一约束字段值可以为NULL;
    ·主键字段可以做为其他表的外键,唯一约束字段不可以做为其他表的外键;
    ·SQLServer默认为主键字段创建聚集索引,为唯一约束字段创建非聚集索引;


    主键,唯一,但是不能为空;唯一约束,唯一,但是可以为空
    展开全文
  • 唯一性约束和主键约束区别:  (1).唯一性约束允许在该列上存在NULL值,而主键约束的限制更为严格,不但不允许有重复,而且也不允许有空值。  (2).在创建唯一性约束和主键约束时可以创建聚集索引和非聚集...
    唯一性约束和主键约束的区别:
    
        (1).唯一性约束允许在该列上存在NULL值,而主键约束的限制更为严格,不但不允许有重复,而且也不允许有空值。

        (2).在创建唯一性约束和主键约束时可以创建聚集索引和非聚集索引,但在 默认情况下主键约束产生聚集索引,而唯一性约束产生非聚集索引。

    约束和索引, 前者是用来检查数据的正确性,后者用来实现数据查询的优化,目的不同。

    1.主键约束(PRIMARY KEY)

    1) 主键用于唯一地标识表中的每一条记录,可以定义一列或多列为主键。 
    2) 是不可能(或很难)更新. 
    3) 主键列上没有任何两行具有相同值(即重复值),不允许空(NULL).
    4) 主健可作外健,唯一索引不可;

    2.唯一性约束(UNIQUE)
    1) 唯一性约束用来限制不受主键约束的列上的数据的唯一性,用于作为访问某行的可选手段,一个表上可以放置多个唯一性约束.
    2) 只要唯一就可以更新. 
    3) 即表中任意两行在  指定列上都不允许有相同的值,允许空(NULL).
    4) 一个表上可以放置多个唯一性约束

    展开全文
  • 这里写目录标题约束非空约束唯一约束主键约束外键约束检查约束三级目录 约束 约束:在创建表时,可以给表的字段添加相应的约束,添加约束的目的是为了保证表中数据的合法性,有效性,完整性。 非空约束 非空约束...

    约束

    约束:在创建表时,可以给表的字段添加相应的约束,添加约束的目的是为了保证表中数据的合法性,有效性,完整性。

    非空约束

    非空约束(NOT NULL):被约束的字段不能为NULL。
    在这里插入图片描述

    唯一约束

    唯一约束(UNIQUE):被约束的字段不能重复。

    • 列级约束
      在这里插入图片描述
    • 表级约束:多个字段联合起来添加一个约束
      在这里插入图片描述
      在这里插入图片描述

    主键约束

    主键约束(PRIMARY KEY):约束的字段既不能重复,也不能为NULL。
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

    MySQL提供主键值自增

    (非常重要)
    在这里插入图片描述
    在这里插入图片描述

    外键约束

    • 外键约束(FOREIGN KEY):
    • 外键字段:添加有外键约束的字段。
    • 外键值:外键字段中的每一个值。
    • 注意:外键可以为NULL

    例子
    在这里插入图片描述
    在这里插入图片描述
    t_student中的classno字段引用了t_class表中的cno字段,此时t_student表叫做子表,t_class表叫做父表。

    顺序要求

    • 删除数据时,先删除子表,再删除父表。
    • 创建数据时,先添加父表,再添加子表。
    • 创建表的时候,先创建父表,再创建子表。
    • 删除表的时候,先删除子表,再删除父表。

    建表语句

    //如果该表存在,先删除
    drop table if exists t_student;
    drop table if exists t_class;
    //创建父表
    create table t_class(
    cno int,
    cname varchar(255),
    primary key(cno)
    );
    //创建子表
    create table t_student(
    sno int,
    sname varchar(255),
    classsno int,
    foreign key(classno) references t_class(no)//外键约束
    );
    

    检查约束

    检查约束(CHECK):Oracle中有该约束,MySQL暂不支持该约束。

    展开全文
  • 约束1、约束概念2、非空约束2.1 创建表时添加约束2.2 创建表后,添加非空约束2.3 删除name的非空约束3、唯一约束3.1 创建表时添加约束3.2 创建表后,添加唯一约束3.3 删除唯一约束4、主键约束4.1 创建表时,添加主键...

    1、约束概念

    概念:对表中的数据进行限定,保证数据的正确性、有效性和完整性。

    约束的分类:

    1. 主键约束:primary key
    2. 非空约束:not null
    3. 唯一约束:unique
    4. 外键约束:foreign key

    2、非空约束

    not null, 某一列的值不能为空

    2.1 创建表时添加约束

    CREATE TABLE stu(
    	id int,
    	name VARCHAR(20) NOT NULL  -- NAME 为非空
    );
    

    image-20210331150332794

    2.2 创建表后,添加非空约束

    -- 创建表后,添加非空约束
    ALTER TABLE stu MODIFY name VARCHAR(20) NOT NULL;
    

    2.3 删除name的非空约束

    alter table stu modify name varchar(20);
    

    3、唯一约束

    unique,某一列的值不能重复

    注意:

    1. 唯一约束可以有null值,但是只能有一个null

    3.1 创建表时添加约束

    CREATE TABLE stu(
    	id INT,
    	phone_number VARCHAR(20) UNIQUE  -- 手机号
    );
    

    image-20210331152409662

    3.2 创建表后,添加唯一约束

    ALTER TABLE stu MODIFY phone_number VARCHAR(20) UNIQUE;
    

    image-20210331153739167

    3.3 删除唯一约束

    -- 删除唯一约束  
    ALTER TABLE stu DROP INDEX phone_number;
    

    image-20210331153010163

    4、主键约束

    主键约束:表示非空且唯一

    注意:

    1. 一张表只能有一个主键
    2. 主键就是一张表中记录的唯一标识

    4.1 创建表时,添加主键约束

    CREATE TABLE stu(
    	id INT PRIMARY KEY,
    	NAME VARCHAR(20)
    );
    
    

    image-20210331154347025

    4.2 删除主键

    ALTER TABLE stu DROP PRIMARY KEY;
    

    image-20210331154620461

    4.3 创建表后,添加主键

    ALTER TABLE stu MODIFY id INT PRIMARY KEY;
    

    image-20210331154757352

    4.4 自动增长

    如果某一列是数值类型的,使用auto_increment可以完成值得自动增长。

    自动增长的数据只跟上一个数据有关。

    • 在创建表时添加主键约束,并完成自动增长

      CREATE TABLE stu(
      	id INT PRIMARY KEY auto_increment, -- 给id添加主键约束
      	NAME VARCHAR(20)
      );
      

      image-20210331155407445

    • 删除自动增长

      ALTER TABLE stu MODIFY id INT;
      
    • 添加自动增长

      ALTER TABLE stu MODIFY id INT AUTO_INCREMENT;
      

    5、外键约束

    5.1 创建表时添加外键

    语法:

    create table 表名(
    	...
    	外键列
    	constraint 外键名称 foreign key 外键列名称 reference 主表名称(主表列名称)
    );
    

    image-20210331204854341

    image-20210331204921753

    image-20210331205035297

    image-20210331205051763

    5.2 删除外键

    alter table 表名 drop foreign key 外键名;
    

    image-20210331205724243

    5.3 添加外键

    alter table 表名 add constraint 外键名称 foreign key 外键列名称 reference 主表名称(主表列名称)
    

    image-20210331205933946

    5.4 级联操作

    • 添加级联的操作

      alter table 表名 add constraint 外键名称 foreign key 外键列名称 reference 主表名称(主表列名称) on update cascade on delete cascade;
      
    • 级联的更新

      添加外键的时候设置级联

      alter table 表名 add constraint 外键名称 foreign key 外键列名称 reference 主表名称(主表列名称) on update cascade;
      

      image-20210331211215364

    • 级联的删除

      alter table 表名 add constraint 外键名称 foreign key 外键列名称 reference 主表名称(主表列名称) on update cascade on delete cascade;
      

      image-20210331211554022

    展开全文
  • 唯一约束主键约束区别 1.主键约束(PRIMARY KEY)1) 主键用于唯一地标识表中的每一条记录,可以定义一列或多列为主键。 2) 是不可能(或很难)更新. 3) 主键列上没有任何两行具有相同值(即重复值),不...
  • 如题,是什么!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!...
  • 主键约束:primary key 非空约束:not null 唯一约束:unique 外键约束:foreign key 1.1 非空约束:not null 1)在创建表时添加约束: CREATE TABLE stu( id INT, NAME VARCHAR(20) NOT NULL -- name为非空...
  • 1.主键约束(PRIMARY KEY) 1) 主键用于唯一地标识表中的每一条记录,可以定义一列或多列为...1) 唯一性约束用来限制不受主键约束的列上的数据的唯一性,用于作为访问某行的可选手段,一个表上可以放置多个唯一性...
  • 主键约束: 默认就是不能为空, 唯一 外键都是指向另外一张表的主键 主键一张表只能有一个 唯一约束: 列面的内容, 必须是唯一, 不能出现重复情况, 为空 唯一约束不可以作为其它表的外键 可以有多个唯一约束 ...
  • mysql 主键约束与唯一约束区别

    千次阅读 2019-01-02 10:19:17
    主键约束 PRIMARY KRY 主键 是唯一的 一张表只能有一个主键 AUTO_INCREMENT 一定要和主键连用 但主键不一定要和 AUTO_INCREMENT 连用 主键一定是非空的 NOT NULL 唯一约束 UNIQUE KEY 唯一约束 唯一约束可以...
  • 唯一约束:unique 主键约束:primary key 外键约束:foreign key 默认约束:Default 检查约束:Check 非空约束:not null 某一列的值不能为空 创建表时添加约束 CREATE TABLE stu( id INT, NAME VARCHAR(20) ...
  • 主键约束、主键自增约束、唯一约束、非空约束、外键约束
  • 主键约束唯一约束

    千次阅读 2019-03-07 21:30:59
    主键约束和唯一约束主键约束和唯一约束的区别普通索引和唯一索引Mysql中的索引普通索引(非唯一索引)唯一索引唯一索引主键约束的唯一索引唯一约束的唯一索引创建唯一索引删除主键约束和唯一约束自动创建的唯一索引 ...
  • 1.主键约束(PRIMARY KEY) 主键用于唯一地标识表中的每一条记录 ... 唯一性约束用来限制不受主键约束的列上的数据的唯一性, 即表中任意两行在 指定列上都不允许有相同的值。3.唯一索引(INDEX) 创建唯
  • 主键约束:创建表时,添加主键约束,并且完成主键自增长auto_increment 主键约束:删除自动增长 主键约束:添加自动增长 1.4 约束种类--唯一约束 唯一约束:在创建表时,添加唯一约束 唯一约束:删除唯一约束 ...
  • 主键约束,唯一约束与默认约束

    千次阅读 2016-07-05 11:21:42
    主键约束:PRIMARY KEY 每张数据表只能存在一个主键 主键保证记录的唯一性 主键自动为NOT NULL AUTO_INCREMENT 自动编号,且必须主键一起使用。但是主键不一定要和AUTO_INCREMENT一起使用 默认情况下,起始值为1,...
  • 约束 * 概念: 对表中的数据进行限定,保证数据的正确性、有效性和... 主键约束:primary key 2. 非空约束:not null 3. 唯一约束:unique 4. 外键约束:foreign key * 非空约束:not null,值不能为null 1....
  • 主键约束唯一约束区别

    千次阅读 2017-11-14 09:30:26
    1.主键约束(PRIMARY KEY) 1) 主键用于唯一地标识表中的每一条记录,可以定义一列或多列为主键。...1) 唯一性约束用来限制不受主键约束的列上的数据的唯一性,用于作为访问某行的可选手段,一个表
  • 注意:一张表中最多有一个主键约束。主键类型:单字段主键、多字段联合主键。 唯一约束 删除主键约束 显示 添加唯一约束 默认约束 ...
  • 主键约束(primary key):约束的字段不能为null也不能重复(简称PK) 外键约束(foreign key):···(简称FK) 检查约束(check):注意Oracle数据库有check约束,当时mysql没有,目前mysq
  • 2. 唯一约束 3. 主键约束 自动增长 4. 外键约束 级联操作 首先我们来想象一下,前几篇文章在我们操作数据库的过程中,自由度是很高的,想给哪个赋值就给哪个赋值,但是这样子,就会造成我们所创建的数据库数据不完整...
  • 10. 数据库约束-主键约束-唯一约束-非空约束-默认值约束概述约束其实就是一种限制,用于修饰表中的列. 通过这种限制来保证表中数据的正确性、有效性和完整性。约束的类型约束名约束关键字主键...
  • 唯一约束(unique)3.1注意事项4.主键约束(primary key)4.1添加主键4.2联合主键4.3注意事项5.外键约束5.1注意事项:6.check 约束 (了解) 1.非空约束(not null) 非空约束 限定某个字段不能为null create table ...
  • 主键约束:primary key 2.非空约束:not null 3.唯一约束:unique 4.外键约束:foreign key 非空约束:not null 1.创建表时添加约束 create table stu( id INT name varchar(20) not nu...
  • 一、非空约束(只能在列级设置,不能在表级设置) 1、在创建表时设置非空约束 CREATE TABLE table_name( column_name datatype NOT NULL,…… );     2、在修改表时添加非空约束 ALTER TABLE table_name ...
  • 主键约束(PRIMARY KEY)和唯一约束(UNIQUE)的区别

    万次阅读 多人点赞 2019-09-09 17:24:22
    1.主键约束(PRIMARY KEY) 主键用于唯一地标识表中的每一条记录,...唯一性约束用来限制不受主键约束的列上的数据的唯一性,用于作为访问某行的可选手段,一个表上可以放置多个唯一性约束. 只要唯一就可以更新....
  • 文章目录1、约束简介2、非空约束(not null、nk)2.1 范例1:使用非空约束2.2 范例2:正确地增加语句2.3 范例3:错误地增加语句3、唯一约束(unique、uk)3.1 范例1:使用唯一约束3.2 范例2:正确地增加语句3.3 范例3:...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 97,658
精华内容 39,063
关键字:

唯一约束与主键约束的区别是