数据库索引小结

本文详细介绍了数据库索引的创建方法,包括使用ALTERTABLE和CREATEINDEX语句,并解释了索引删除的语法。此外,还讨论了索引的优缺点,以及在何种情况下应避免或减少索引的使用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

     好处:数据库利用各种各样的快速定位技术,能够大大提高查询效率
    索引的创建:
        1.ALTER TABLE ,ALTER TABLE用来创建普通索引、UNIQUE索引或PRIMARY KEY索引
        例子:ALTER TABLE table_name ADD INDEX index_name (column_list)
        说明:table_name是要增加索引的表名,column_list指出对哪些列进行索引,多列时各列之间用逗号分隔。索引名index_name可选,缺省时,MySQL将根据第一个索引列赋一个名称。另外,ALTER TABLE允许在单个语句中更改多个表,因此可以在同时创建多个索引
        
        2.CREATE INDEX CREATE INDEX可对表增加普通索引或UNIQUE索引
        例子:CREATE INDEX index_name ON table_name (column_list)
        说明:table_name、index_name和column_list具有与ALTER TABLE语句中相同的含义,索引名不可选。另外,不能用CREATE INDEX语句创建PRIMARY KEY索引
    索引删除:
        1.语句
            DROP INDEX index_name ON talbe_name
            ALTER TABLE table_name DROP INDEX index_name
            ALTER TABLE table_name DROP PRIMARY KEY
        从表中删除了某列,则索引会受到影响。对于多列组合的索引,如果删除其中的某列,则该列也会从索引中删除。如果删除组成索引的所有列,则整个索引将被删除
    索引什么情况下应不建或少建索引:
        1.表记录太少
        2.经常插入、删除、修改的表
        3.数据重复且分布平均的表字段 ex:假如一个表有10万行记录,有一个字段A只有T和F两种值,且每个值的分布概率大约为50%,那么对这种表A字段建索引一般不会提高数据库的查询速度
        4.经常和主字段一块查询但主字段索引值比较多的表字段
    索引的缺点:
        1.索引也是一种数据,在建立索引的时候势必也会占用大量表空间。因此在对一大表建立索引的时候首先应当考虑的是空间容量问题
        2.性能调整方面,尽量把索引与数据分散到不同的磁盘上

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值