首页 > 数据库 >MYSQL判断索引是否存在,不存在则创建索引(亲测可用)

MYSQL判断索引是否存在,不存在则创建索引(亲测可用)

时间:2023-10-23 12:55:33浏览次数:36  
标签:index target name 索引 add MYSQL table 亲测

MYSQL判断索引是否存在,不存在则创建索引(亲测可用)

  1. springboot集成flyway管理数据库版本
  2. 使用存储过程平滑更新系统数据库
  3. 这是一个不存在就添加索引的例子,若需求是存在则删除 微调下面的 if not exists 即可
  4. DROP PROCEDURE IF EXISTS add_index;
  5. DELIMITER $
  6. CREATE PROCEDURE add_index()
  7. BEGIN
  8. DECLARE target_database VARCHAR(100);
  9. DECLARE target_table_name VARCHAR(100);
  10. DECLARE target_column_name VARCHAR(100);
  11. DECLARE target_index_name VARCHAR(100);
  12. set target_table_name = '表名';
  13. set target_index_name = '索引名';
  14. SELECT DATABASE() INTO target_database;
  15. IF NOT EXISTS (SELECT * FROM information_schema.statistics WHERE table_schema = target_database AND table_name = target_table_name AND index_name = target_index_name) THEN
  16. set @statement = "alter table `实际表名` add UNIQUE KEY 索引名 (字段,多字段逗号分隔)";
  17. PREPARE STMT FROM @statement;
  18. EXECUTE STMT;
  19. END IF;
  20. END;
  21. $
  22. DELIMITER ;
  23. CALL add_index();

ps: 修改的两个地方:

一是定义好索引名和表名,

二是写好@statement,就是平时写的操作索引的语句

原文链接:https://blog.csdn.net/TurboAnho/article/details/119808724

标签:index,target,name,索引,add,MYSQL,table,亲测
From: https://www.cnblogs.com/sunny3158/p/17782156.html

相关文章

  • 安装MySQL以及Workbench
    MySQL压缩包下载链接安装将安装包解压到本地文件夹,假设为D:/ProgramFiles/MySQL。新增系统环境变量:#直接新建。MYSQL_HOME:D:\ProgramFiles\MySQL#在原Path上新增。Path:%MYSQL_HOME%\bin在D:/ProgramFiles/MySQL下新建文件mysql.ini,并添加如下内容(参考官方文......
  • mysql数据库类型有哪些
    mysql数据库类型有哪些mysql数据库类型有:1、整数类型;2、浮点数类型;3、定点数类型;4、位类型BIT;5、日期与时间类型;6、文本字符串类型;7、ENUM类型;8、SET类型;9、二进制字符串类型;10、JSON类型;11、空间类型。其中,整数类型一共有5种。1、整数类型整数类型一共有5种,包括TINYI......
  • MySQL的几种日志
      重做日志(redolog)redolog(重做日志)是InnoDB存储引擎独有的,它让MySQL拥有了崩溃恢复能力。比如MySQL实例挂了或宕机了,重启时,InnoDB存储引擎会使用redolog恢复数据,保证数据的持久性与完整性。InnoDB会把“在某个数据页上做了什么修改”记录到重做日志缓存(redologbuffer)里,接着刷......
  • mysql增量备份
    一、备份计划以下是MySQL数据库增量备份的一般计划:创建完整备份:在自动备份计划开始前,先创建一次完整备份。这个备份将包含所有数据和表结构。保存增量备份:在每次备份计划完成后,保存增量备份。这个备份将包含从完整备份之后的所有更改操作。定期清理备份:为了节约磁盘空间,定期......
  • Chromium源码 修改默认搜索引擎及标签页
    默认新标签页修改方法:1.找到chrome/browser/ui/browser_tabstrip.cc文件找到变量NavigateParamsparams:1NavigateParamsparams(browser,url.is_empty()?browser->GetNewTabURL():url,2ui::PAGE_TRANSITION_TYPED);修改为:1NavigatePara......
  • mysql导入.cvs
    workbench新建1张表,没有import按钮,原因是没有设置主键将一个字段设置为主键后,即可导入数据将要导入的数据文件改为utf-8的格式,使用记事本打开查看选择文件选择数据库表查看字段与数据是否对应开始导入......
  • mysql case when then else 语法
    update`badges`set`cat_point`=CASEWHENlevel>=1THENPOW(2,`level`-1)ELSE0ENDwherenamenotlike'%Steam%'; if level>=1:  cat_point=POW(2,`level`-1)else:  cat_point=0......
  • MYSQL语句
    MySQL常用基础语句cmd登录mysql-hlocalhost-uroot-pSHOW语句返回可用数据库列表showdatabases;返回当前选择数据库内可用表的列表showtables;显示表中的所有列(xxx:表名)showcolumnsfromxxx;ordescribexxx;显示服务器状态信息showstatus;显示创建特定......
  • Pycharm 2023.2 最新po jie版安装教程(附激活码,亲测有效)
    申明:本教程Pycharmpojie补丁、激活码均收集于网络,请勿商用,仅供个人学习使用,如有侵权,请联系作者删除。若条件允许,希望大家购买正版!前言笔者分享一种比较靠谱的Pycharm pojie方案:激活脚本+激活码(全自动模式),即本文教程所写,这种方法适合最新的几个版本,具体步骤跟着本文教程一步......
  • Xshell 7 po jie 版下载(亲测好用)
    贴出我安装成功的截图:本文中提供的Xshell安装包是官方免费版,无需下载注册机,或者需要断网等各种骚操作,安装完成后即可使用,非常方便。前言Xshell是一个强大的安全终端模拟软件,它支持SSH1,SSH2,以及MicrosoftWindows平台的TELNET协议。Xshell通过互联网到远程主机的安全连......