• 企业400电话
  • 网络优化推广
  • AI电话机器人
  • 呼叫中心
  • 全 部 栏 目

    网站建设 商标✡知产 微网小程序 电商运营 彩铃•短信 增值拓展业务
    MySQL约束超详解
    POST TIME:2021-10-18 19:17

    MySQL约束操作

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

    分类:

    1.非空约束

    not null,值不能为空。

    创建表时添加非空约束:

    CREATE TABLE stu(
     id INT,
     NAME VARCHAR(20) NOT NULL
    );
    
    

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

    ALTER TABLE stu 
    MODIFY NAME VARCHAR(20) NOT NULL;
    
    

    删除非空约束

    ALTER TABLE stu 
    MODIFY NAME VARCHAR(20);
    
    

    2.唯一约束

    unique,值不能重复。

    创建表时添加唯一约束

    CREATE stu(
     id INT;
     phone_number VARCHAR(20) UNIQUE
    );
    
    

    注意:mysql中,唯一约束限定的列的值可以有多个null

    删除唯一约束

    ALTER TABLE stu
    DROP INDEX phone_number;
    
    

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

    ALTER TABLE stu 
    MODIFY phone_number VARCHAR(20) UNIQUE;
    
    

    3.主键约束

    primary key,

    • 非空且唯一。
    • 一张表只能有一个字段为主键。
    • 主键就是表中记录的唯一标识。

    创建表时添加主键约束

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

    删除主键

    ALTER TABLE stu 
    DROP PRIMARY KEY;
    
    

    创建表完后,添加主键

    ALTER TABLE stu 
    MODIFY id INT PRIMARY KEY ;
    
    

    这里补充一个知识点:自动增长

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

    例子:

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

    CREATE TABLE stu(
     id INT PRIMARY KEY AUTO_INCREMENT,
     NAME VARCHAR(20)
    );
    #自动增长会根据当前列的最后一行的值往后增加。
    
    

    删除自动增长

    ALTER TABLE stu
    MODIFY id INT;
    #这样只会删除自动增长,主键删不掉。
    
    

    创建表完后,在添加自动增长

    ALTER TABLE stu
    MODIFY id INT AUTO_INCREMENT;
    
    

    4.外键约束

    foreign ley,让表与表产生关系,从而保证数据的正确性。

    在创建表时,可以添加外键

    CREATE TABLE 表名(
     ...
     外键列
     CONSTRAINT 外键名称 FOREIGN KEY (外键列名称) REFERENCES 主表名称(主表列名称)
    );
    
    

    删除外键

    ALTER TABLE 表名 DROP FOREIGN KEY 外键名称;
    
    

    创建表之后,添加外键

    ALTER TABLE 表名 ADD CONSTRAINT 外键名称 FOREIGN KEY (外键字段名称) REFERENCES 主表名称(主表列名称);
    
    

    5、级联

    添加级联操作

    ALTER TABLE 表名 ADD CONSTRAINT 外键名称 
    FOREIGN KEY (外键字段名称) REFERENCES 主表名称(主表列名称)
    ON UPDATE CASCADE ON DELETE CASCADE  ;

    级联删除

    ON UPDATE CASCADE
    
    

    到此这篇关于MySQL约束超详解的文章就介绍到这了,更多相关MySQL约束内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

    您可能感兴趣的文章:
    • mysql完整性约束实例详解
    • MySQL中常见的六个约束类型详解
    • MySQL约束类型及举例介绍
    • 基于MySQL数据库的数据约束实例及五种完整性约束介绍
    • MySQL学习之数据库表五大约束详解小白篇
    上一篇:MySQL中的隐藏列的具体查看
    下一篇:mysql配置SSL证书登录的实现
  • 相关文章
  • 

    关于我们 | 付款方式 | 荣誉资质 | 业务提交 | 代理合作


    © 2016-2020 巨人网络通讯

    时间:9:00-21:00 (节假日不休)

    地址:江苏信息产业基地11号楼四层

    《增值电信业务经营许可证》 苏B2-20120278

    X

    截屏,微信识别二维码

    微信号:veteran88

    (点击微信号复制,添加好友)

     打开微信