zoukankan      html  css  js  c++  java
  • mysql概要(十四)(一)索引

    1.索引是对数据库数据建立目录加快了查询速度。索引分为哈希索引和二叉树索引

    (大数据量转移,如果表中带有大量字段索引,进行数据导入时,建议先去掉索引导入数据再统一加入索引,减少索引计算量)

    2.索引原则:

    3.索引分类:

    3.1对于全文索引:把一段文章中的某些词抽出来做成索引。

        

        a.查询带有全文索数据的方式:

        

        b.查询之前有一个匹配度的计算会将匹配度大于0的取出 

        

    4.查看表的所有信息,包括一些字段类型,字段的约束,外键,主键,索引,字符编码等等。

       show create table 表名;

    5.添加索引:除了在建表时添加外还可以:

    (默认索引名和列名一样可不写)

    6. 删除索引(删主键有所不同)

    7.案例:

    8.外键默认可以为空的,主键默认是非空,唯一的

    8.1 为已经添加好的数据表添加外键:

        语法:alter table 表名 add constraint FK_ID foreign key(你的外键字段名) REFERENCES 外表表名(对应的表的主键字段名);
        例: alter table tb_active add constraint FK_ID foreign key(user_id) REFERENCES tb_user(id)
           FK_ID是外键的名称
     
    CREATE TABLE `tb_active` (
     `id` int(11) NOT NULL AUTO_INCREMENT,
     `user_id` int(11) NOT NULL,
     PRIMARY KEY (`id`),
     KEY `user_id` (`user_id`),
     CONSTRAINT `FK_ID` FOREIGN KEY (`user_id`) REFERENCES `tb_user` (`id`)
    ) ENGINE=InnoDB CHARSET=latin1
     
    8.2 删除外键
        语法: ALTER TABLE table-name DROP FOREIGN KEY key-id;
        例:   ALTER TABLE `tb_active` DROP FOREIGN KEY `FK_ID`
  • 相关阅读:
    代理模式
    栈和队列----按照左右半区的方式重新组合单链表
    栈和队列----合并两个有序的单链表
    Java中的线程池
    SpringMVC中的参数绑定
    Mybatis常见面试题汇总
    ADC裸机程序
    用uart实现printf函数
    uarts裸机程序
    定时器裸机程序
  • 原文地址:https://www.cnblogs.com/straybirds/p/5137380.html
Copyright © 2011-2022 走看看