判断字段是否存在:

 DROP PROCEDURE IF EXISTS schema_change;
DELIMITER //
CREATE PROCEDURE schema_change() BEGIN
DECLARE CurrentDatabase VARCHAR();
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 COMMENT '是否上传 是否上传';
END IF;
END//
DELIMITER ;
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();

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

mysql 判断表字段或索引是否存在 - 举一反三的更多相关文章

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

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

  2. mysql 判断表字段或索引是否存在,然后修改

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

  3. mysql判断表字段或索引是否存在,然后修改

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

  4. mysql 判断表字段是否存在,然后修改

    -- ---------------------------- -- 判断 vrv_paw_rule 表是否存在 thresholdMin 字段,不存在则添加; 存在则修改字段类型 DELIMITER ...

  5. @MySQL为表字段添加索引

    删除索引~ DROP INDEX `idx_dict_type` ON `article` 1.添加PRIMARY KEY(主键索引): ALTER TABLE `table_name` ADD PR ...

  6. mysql - 查看表字段和字段描述

    1.mysql查看表字段和字段描述 SELECT column_name, column_comment FROM information_schema.columns WHERE table_sch ...

  7. mysql按表字段内容长度排序

    今天遇到个需求如下: 查询一下新的业务是否正常入库,遇到的问题是新旧业务用的是同一个字段标识,唯一不同的是字段里内容的长度不同 查询方式如下,mysql按表字段内容长度排序 SELECT * FROM ...

  8. MySQL修改表字段相关信息

    昨天收获颇多,首先回顾一下有关mysql的内容. 我在查询表信息时,出现了 empty set 0.00 sec 的错误,我很奇怪,仔细检查发现原来是表字段名称写错了, 于是我想修改字段名称,经过查询 ...

  9. MySQL处理表字段小技巧

    MySQL利用正则函数替换值 update dateTest set date=REPLACE(date,'/','') where date REGEXP '\/'; SQL语句讲解: -- 将 所 ...

随机推荐

  1. leetcode532

    public class Solution { public int FindPairs(int[] nums, int k) { var pair = new Dictionary<strin ...

  2. oracle 截取字符(substr),检索字符位置(instr)

    常用函数:substr和instr 1.SUBSTR(string,start_position,[length])    求子字符串,返回字符串 解释:string 元字符串 start_posit ...

  3. GridEh Lookup

    Flexible adjustment of a lookup inplace editor 没有输入拼音码搜索功能. Drop-Down Forms 这个比较符合中国人的习惯,搜索框,不错,点下来箭 ...

  4. Direcshow之视频捕捉<转>

    关于视频捕捉(About Video Capture in Dshow) 1. 视频捕捉Graph的构建 一个能够捕捉音频或者视频的graph图都称之为捕捉graph图.捕捉graph图比一般的文件回 ...

  5. set 续4

    ---------siwuxie095                 批处理简易计算器 @echo off ::设置窗口标题 title DOS 简易计算器 ::设置窗口大小 ::设置窗口颜色 co ...

  6. basicHttpBinding

    表示一个绑定,Windows Communication Foundation (WCF) 服务可以使用此绑定配置和公开能够与基于 ASMX 的 Web 服务和客户端通信的终结点以及符合 WS-I B ...

  7. 最多有k个不同字符的最长子字符串 · Longest Substring with at Most k Distinct Characters(没提交)

    [抄题]: 给定一个字符串,找到最多有k个不同字符的最长子字符串.eg:eceba, k = 3, return eceb [暴力解法]: 时间分析: 空间分析: [思维问题]: 怎么想到两根指针的: ...

  8. QEMU 代码分析:BIOS 的加载过程

    http://www.ibm.com/developerworks/cn/linux/1410_qiaoly_qemubios/ QEMU 中使用 BIOS 简介 BIOS 提供主板或者显卡的固件信息 ...

  9. Linux执行YUM命令报错解决方案

    Loaded plugins: rhnplugin, security This system is not registered with RHN. RHN support will be disa ...

  10. HDU 1071 The area (数学定积分)

    题意:求阴影部分面积. 析:没什么可说的,就是一个普通的定积分. 代码如下: #include <cstdio> #include <iostream> using names ...