zoukankan      html  css  js  c++  java
  • MySQL--索引和外键

    来自:http://www.jb51.net/article/32149.htm

    1.添加PRIMARY KEY(主键索引) 
          ALTER TABLE `table_name` ADD PRIMARY KEY ( `column` ) 
    2.添加UNIQUE(唯一索引) 
          ALTER TABLE `table_name`

          ADD UNIQUE ( 
            `column` 
          ) 
    3.添加INDEX(普通索引) 
          ALTER TABLE `table_name`

          ADD INDEX index_name (

          `column` ) 
    4.添加FULLTEXT(全文索引) 
          ALTER TABLE `table_name`

          ADD FULLTEXT (

          `column`) 
    5.添加多列索引 
          ALTER TABLE `table_name`

          ADD INDEX index_name (

          `column1`,

          `column2`,

          `column3` )

    在创建索引时,可以指定在删除、更新父表时,对子表进行相应的操作,包括RESTRICT, CASCADE, SET NULL, NO ACTION

    其中,RESTRICT和SET NULL相同,是指限制在子表有关联记录的情况下父表不能更新

    CASCADE表示父表在更新或者删除时,更新或者删除子表对应记录

    SET NULL则表示父表在更新或者删除的时候,子表的对应字段被SET NULL

    选择后面两种方式的时候要谨慎,可能因为错误的操作导致数据的丢失

    当某个表被其他表创建了外键参照,那么该表的对应索引或者主键禁止被删除

    在导入多个表的数据是,如果需要忽略表之前的导入顺序,可以暂时关闭外键的检查;同样,在执行LOAD DATA和ALTER TABLE操作的时候,可以通过暂时关闭外键约束来加快处理的速度。关闭的命令是

          SET FOREIGN_KEY_CHECKS = 0

    执行完成之后,通过执行

          SET FOREIGN_KEY_CHECKS = 1

    改回原状态

  • 相关阅读:
    java集合:ArrayList(1)
    java虚拟机:堆内存
    计算机三种编码与加减运算
    java虚拟机:程序计数器
    java虚拟机:JIT编译器
    java虚拟机:运行时常量池
    java虚拟机:方法区
    java虚拟机:本地方法栈
    java虚拟机:class文件结构
    linux安装mysql
  • 原文地址:https://www.cnblogs.com/microcat/p/6600682.html
Copyright © 2011-2022 走看看