zoukankan      html  css  js  c++  java
  • mysql 判断表字段或索引是否存在

    判断字段是否存在:

    1 DROP PROCEDURE IF EXISTS schema_change;  
     2 DELIMITER //
     3 CREATE PROCEDURE schema_change() BEGIN 
     4 DECLARE  CurrentDatabase VARCHAR(100);
     5 SELECT DATABASE() INTO CurrentDatabase;
     6 IF NOT EXISTS (SELECT * FROM information_schema.columns WHERE table_schema=CurrentDatabase AND table_name = 'rtc_order' AND column_name = 'IfUpSend') THEN  
     7     ALTER TABLE rtc_order
     8     ADD COLUMN `IfUpSend` BIT  NOT NULL  DEFAULT 0 COMMENT '是否上传 是否上传';
     9 END IF;  
    10 END//  
    11 DELIMITER ;  
    12 CALL schema_change();

    判断索引是否存在:

     1 DROP PROCEDURE IF EXISTS schema_change;  
     2 DELIMITER //
     3 CREATE PROCEDURE schema_change() BEGIN 
     4 DECLARE  CurrentDatabase VARCHAR(100);
     5 SELECT DATABASE() INTO CurrentDatabase;
     6 IF NOT EXISTS (SELECT * FROM information_schema.statistics WHERE table_schema=CurrentDatabase AND table_name = 'rtc_phototype' AND index_name = 'index_name') THEN  
     7    ALTER TABLE `rtc_Phototype` ADD INDEX index_name ( `imgtype` );
     8 END IF;  
     9 END//  
    10 DELIMITER ;  
    11 CALL schema_change(); 

    从这两段代码可以举一反三,可以得知很多信息,具体可以自己试验一下

  • 相关阅读:
    array与xml转换实现(转)
    设计模式之: 策略模式
    设计模式之: 代理模式
    设计模式之: 状态模式
    dedecms分页
    dedecms导出csv文件
    假如项目中使用到了多 表查询,怎么办?
    git忽略某个文件夹
    git忽略某个文件
    无极限分类
  • 原文地址:https://www.cnblogs.com/zhenghongxin/p/5555586.html
Copyright © 2011-2022 走看看