本篇文章将通过存储过程来判断列(字段)是否存在。请看详情。

推荐课程:MySQL教程。

判断字段是否存在: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.columns WHERE table_schema=CurrentDatabase AND table_name = 'rtc_order' AND column_name = 'IfUpSend') THEN

ALTER TABLE rtc_order

ADD COLUMN `IfUpSend` BIT NOT NULL DEFAULT 0 COMMENT '是否上传 是否上传';

END IF;

END//

DELIMITER ;

CALL schema_change();

mysql 判断字段否存在,如果存在就修改字段:DROP PROCEDURE IF EXISTS proc_tempPro;

if(@count>0) THEN

alter table 表名 change column `旧列名` `新列名` varchar(30) comment '字段说明';

end if;

end;

call proc_tempPro;

DROP PROCEDURE IF EXISTS proc_tempPro;

通过存储过程判断字段是否存在,不存在则增加:DROP PROCEDURE IF EXISTS pro_AddColumn;

CREATE PROCEDURE pro_AddColumn() BEGIN

IF NOT EXISTS(SELECT 1 FROM information_schema.columns WHERE table_name='component' AND COLUMN_NAME='PRINT_CHECK_STATUS') THEN

ALTER TABLE component ADD PRINT_CHECK_STATUS int(10) default 0;

END IF;

IF NOT EXISTS(SELECT 1 FROM information_schema.columns WHERE table_name='component' AND COLUMN_NAME='PRINT_CHECK_TIME') THEN

ALTER TABLE component ADD PRINT_CHECK_TIME datetime NULL;

END IF;

IF NOT EXISTS(SELECT 1 FROM information_schema.columns WHERE table_schema=podcloud AND table_name='component' AND COLUMN_NAME='PRINT_CHECK_BACK_REASON') THEN

ALTER TABLE component ADD PRINT_CHECK_BACK_REASON varchar(500) default null;

END IF;

END;

CALL pro_AddColumn;

DROP PROCEDURE pro_AddColumn;

------------------------------------------------------------------------------------------------

DROP PROCEDURE IF EXISTS pro_AddIndex;

DELIMITER;

CREATE PROCEDURE pro_AddIndex() BEGIN IF NOT EXISTS (SELECT * FROM information_schema.statistics WHERE table_schema=CurrentDatabase AND table_name = 'rtc_phototype' AND index_name = 'index_name') THEN

ALTER TABLE `rtc_Phototype` ADD INDEX index_name ( `imgtype` );

END IF;

END;

DELIMITER;

CALL pro_AddIndex();

Drop procedure pro_AddIndex;

mysql字段是否存在_mysql判断列是否存在相关推荐

  1. mysql字段是否存在_Mysql判断表字段或索引是否存在

    判断字段是否存在: DROP PROCEDURE IF EXISTS schema_change; DELIMITER // CREATE PROCEDURE schema_change() BEGI ...

  2. json mysql 字段 默认值_MySQL中的JSON类型

    前言(废话) 昨天抽了点时间在网上搜列了一个开源项目,项目挺完整的,前后台分离还带有微信小程序,我Clone下代码,经过一番倒腾,嘿~还真就跑起来了.在这个过程中,体验了一把VUE项目工程细节,因为之 ...

  3. mysql字段简索引_Mysql索引优化攻略(全)

    所谓索引就是为特定的mysql字段进行一些特定的算法排序,比如二叉树的算法和哈希算法,哈希算法是通过建立特征值,然后根据特征值来快速查找.而用的最多,并且是mysql默认的就是二叉树算法 BTREE, ...

  4. mysql字段是否存在_mysql怎么查询字段是否存在?

    在mysql中可以使用下面的语句判断mysql表中字段是否存在:select count(*) from information_schema.columns where table_name = ' ...

  5. mysql字段的长度_MySQL字段的长度

    MySQL字段有多种的类型,不同的MySQL字段长度也各不一样,下面就为您介绍各种MySQL字段的长度,供您参考学习之用. 数值类型 列类型 需要的存储量 TINYINT 1 字节 SMALLINT ...

  6. mysql 字段内部转行_mysql 列转行、列转行的有关问题_mysql

    mysql 列转行.列转行的问题 今天在逛大java吧的时候看到一个行转列.列转行的问题,看了之后还真的不知道怎么下手,可能平时用hibernate作为持久层用多了,sql语句也不会写了,赶紧去找度娘 ...

  7. mysql查询表字段是否存在_Mysql判断表字段或索引是否存在

    判断字段是否存在: DROP PROCEDURE IF EXISTS schema_change; DELIMITER // CREATE PROCEDURE schema_change() BEGI ...

  8. mysql字段简索引_MySQL优化看这一篇就够了

    本文概要 概述 为什么要优化 系统的吞吐量瓶颈往往出现在数据库的访问速度上 随着应用程序的运行,数据库的中的数据会越来越多,处理时间会相应变慢 数据是存放在磁盘上的,读写速度无法和内存相比 如何优化 ...

  9. mysql 字段属性命令_mysql 操作字段 命令

    ALTER TABLE - 更改表属性 添加字段: alter table `user_movement_log` Add column GatewayId int  not null default ...

最新文章

  1. mysql实现pr曲线_ROC 曲线与 PR 曲线
  2. Java8 HashMap实现原理探究
  3. 【剑指Offer】俯视50题之31 - 40题
  4. 请问华为三层交换机里面的那个从IP是个什么意思? -
  5. [Linux]NAT和代理服务器
  6. Silverlight:使用Storyboard控制动画--控制动画事件交互
  7. java8 hashmap_Java8 中的 HashMap
  8. winform 防止多開
  9. 【洛谷OJ】传球游戏
  10. Wordle_1.0
  11. 诊断故障码(Diagnostic Trouble Code-DTC)
  12. css页脚怎么居中,无法使我的页脚内容居中
  13. Python非线性拟合笔记
  14. 2017安防摄像头技术发展趋势分析
  15. 65536 65535 65534
  16. 折线(Polyline)、多边形(Polygon)
  17. 匈奴国王阿提拉:令整个欧洲发抖的上帝之鞭
  18. 新手必需知道的查看Windows系统是否被重启的方法
  19. jQuery 08-13
  20. (NSMenu,NSMenuItme)如何在菜单栏添加新的菜单

热门文章

  1. 浅谈数据中台安全体系构建思路
  2. Mendix:云原生应用是软件的未来
  3. 看懂别人的代码,只是成为高效程序员的第一步!
  4. MQ 技术产品井喷,今天来详聊一下腾讯开源消息中间件 TubeMQ | 原力计划
  5. 高晓松侃5G!2019开年大讲揭示运营商的秘密
  6. 华为云发布新slogan,新年伊始加速奔跑
  7. 我们研究了1.5万场活动,换个大城市生活可能对你有用
  8. http中的请求头各部分都是什么意思_硬核!30 张图解 HTTP 常见的面试题
  9. SpringBoot2 集成xJar插件 动态解密jar包,避免源码泄露或反编译
  10. 企业实战_01_ Mycat 主要作用_01