美文网首页SQL入门到放弃
MySQL学习笔记(二)约束和修改数据表

MySQL学习笔记(二)约束和修改数据表

作者: joshul | 来源:发表于2017-03-14 23:47 被阅读0次
    约束和修改数据表
    一、约束

    约束可保证数据的完整性与一致性
    约束分为表级约束与列级约束
    约束类型包括 NOT NULL | PRIMARY KEY | UNIQUE KEY | DEFAULT | FOREIGN KEY
    FOREIGN KEY 可保持数据一致性,完整性,并实现一对一或一对多关系。

    外间约束的要求

    Paste_Image.png

    外键约束的参照操作


    Paste_Image.png

    表级约束,列级约束

    二、修改数据表
    增加单列
    ALTER TABLE tb_name ADD col_name data_type [FIRST|AFTER col_name];
    
    增加多列
    ALTER TABLE tb_name ADD (col_name data_type ,...);
    
    删除单列
    ALTER TABLE tb_name DROP col_name;
    
    删除多列
    ALTER TABLE tb_name DROP col_name,DROP ....;
    
    复合增减列
    ALTER TABLE tb_name ADD col_name data_type [FIRST|AFTER col_name],DROP col_name;
    ALTER TABLE tb_name ADD (col_name data_type ,...),DROP col_name,DROP ...;
    
    添加主键约束
    ALTER TABLE tb_name ADD [CONSTRAINT [symbol]] PRIMARY KEY(index_col_name);
    
    添加唯一约束
    
    ALTER TABLE tb_name ADD [CONSTRAINT [symbol]] UNIQUE [INDEX|KEY](index_col_name,...);
    
    
    添加外键约束
    ALTER TABLE tb_name ADD [CONSTRAINT [symbol]] FOREIGN KEY(index_col_name,...) REFERENCES db_name(col_name);
    
    添加或删除默认约束
    ALTER TABLE tb_name ALTER col_name {SET DEFAULT literal | DROP DEFAULT};
    
    删除主键约束
    ALTER TABLE tb_name DROP PRIMARY KEY;
    
    删除唯一约束 先通过 SHOW INDEXES FROM db_name ;来查找索引名
    ALTER TABLE tb_name DROP {INDEX|KEY} index_name ;
    
    删除外键约束 先通过 SHOW CREATE TABLE tb_name;来查约束名。
    ALTER TABLE tb_name DROP FOREIGN KEY fk_symbol;
    
    修改列定义 这里不仅可以修改列位置,也可以修改列数据类型
    ALTER TABLE tb_name MODIFY col_name colimn_definition [FIRST|AFTER col_name];
    
    修改列名称
    ALTER TABLE tb_name CHANGE old_col_name new_col_name col_definition [FIRST|AFTER col_name];
    
    修改数据表名
    ALTER TABLE tb_name RENAME [TO|AS] new_tb_name
    RENAME TABLE tb_name TO new_tb_name[,tb_name2 TO new_tb_name2]
    
    本节知识点
    Paste_Image.png

    相关文章

      网友评论

        本文标题:MySQL学习笔记(二)约束和修改数据表

        本文链接:https://www.haomeiwen.com/subject/vytknttx.html