mysql 线上加索引_mysql添加索引

如果userinfo表中存在idx_name索引,则先删除再添加。否则直接添加索引

使用事务添加索引

#添加索引说明

USE test;/*库名*/

DROP PROCEDURE IF EXISTS schema_change;

DELIMITER //

CREATE PROCEDURE schema_change()

BEGIN

DECLARE CurrentDatabase VARCHAR(100);

SELECT DATABASE() INTO CurrentDatabase;

IF NOT EXISTS (SELECT * FROM information_schema.statistics WHERE table_schema=CurrentDatabase AND table_name ='userinfo'/*表名*/

AND index_name = 'idx_uname'/*字段名*/ )

THEN

ALTER TABLE `userinfo` ADD INDEX `idx_uname` (`uname` ASC);

ELSE

ALTER TABLE `userinfo` DROP INDEX `idx_uname` ,ADD INDEX `idx_uname` (`uname` ASC);

END IF;

#如需继续修改其他字段,请在这里复制以上 IF NOT----END IF部份,并修改

END//

DELIMITER ;

CALL schema_change();

创建索引,除了ALTER TABLE还可以使用create index

create index idx_uname on userinfo (uname);

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值