mysql存儲(chǔ)過程遇到ERROR 1060 (42S21):Duplicate column問題及解決方案
問題描述
實(shí)際的日常開發(fā)工作中,經(jīng)常需要對(duì)現(xiàn)有表的結(jié)構(gòu)作出變更,涉及到sql相關(guān)的操作,基本都通過初始化腳本來完成,如果初始化腳本運(yùn)行失敗或者遇到其他問題,可能導(dǎo)致sql部分執(zhí)行,不分失敗的問題,從而造成這個(gè)ERROR 1060 (42S21): Duplicate column的問題

問題的解決
方法一:在初始化腳本中添加判斷,對(duì)于ERROR 1060 (42S21): Duplicate column可以容忍的錯(cuò)誤直接跳過繼續(xù)執(zhí)行
方法二:通過存儲(chǔ)過程來實(shí)現(xiàn):
- 相關(guān)sql如下:
drop procedure if exists add_col_b;
delimiter ';;';
create procedure add_col_b() begin
if not exists( select * from information_schema.`COLUMNS` where TABLE_NAME='t2' and COLUMN_NAME='b') then
set names utf8;
alter table t2 add b int DEFAULT 0 COMMENT '';
end if;
end;;
delimiter ';';
call add_col_b();
drop procedure if exists add_col_b;- 具體操作效果:

總結(jié)
以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
MySQL DML語(yǔ)句定義及常見用法實(shí)戰(zhàn)指南
本文介紹了DML(數(shù)據(jù)操作語(yǔ)言)的核心概念及其在MySQL中的應(yīng)用場(chǎng)景,包括插入(INSERT)、更新(UPDATE)、刪除(DELETE)和查詢(SELECT)四大操作,并詳細(xì)講解了每種操作的語(yǔ)法和注意事項(xiàng),感興趣的朋友跟隨小編一起看看吧2026-04-04
MySQL中幾種數(shù)據(jù)統(tǒng)計(jì)查詢的基本使用教程
這篇文章主要介紹了幾種MySQL中數(shù)據(jù)統(tǒng)計(jì)查詢的基本使用教程,包括平均數(shù)和最大最小值等的統(tǒng)計(jì)結(jié)果查詢方法,是需要的朋友可以參考下2015-12-12
MySql 5.6.35 winx64 安裝詳細(xì)教程
這篇文章主要介紹了MySql 5.6.35 winx64 安裝詳細(xì)教程,非常不錯(cuò),具有參考借鑒價(jià)值,需要的朋友可以參考下2017-02-02
Windows下MySql錯(cuò)誤代碼1045的解決方法
這篇文章主要介紹了Windows下MySql錯(cuò)誤代碼1045的解決方法,文中還包含了2個(gè)Linux下的解決方法,需要的朋友可以參考下2014-06-06

