mysql新增表或字段时判断是否存在

mysql新增表或字段时判断是否存在

新增数据表和字段是很常见的,在如果已经存在或者字段存在时就会报错。在升级程序时往往是一大堆的 sql 语句,而单一的 sql 语句是没法在新增时判断表或者字段是否存在的,必须写成存储过程。

下面是一个存储过程的例子:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
CREATE PROCEDURE `add_col_homework`() -- 新增一个存储过程
BEGIN

IF NOT EXISTS (SELECT column_name FROM information_schema.colums WHERE table_name = 'ot_user' AND column_name = 'sfzzh') -- 判断字段是否存在
THEN
-- 不存在则新增字段
ALTER TABLE ot_stamp ADD COLUMN `sfzzh` int(10);
END IF;

END;

call add_col_homework();-- 运行该存储过程

drop PROCEDURE add_col_homework; -- 删除该存储过程
文章目录
  1. 1. mysql新增表或字段时判断是否存在
本站总访问量 | 本页面被访问 | 您是第位小伙伴

© 炫彩信息科技有限公司 版权所有 备案号 : 赣ICP备19008485号