mysql存儲過程遇到ERROR 1060 (42S21):Duplicate column問題及解決方案
更新時間:2025年04月25日 10:21:27 作者:_小魚塘
這篇文章主要介紹了mysql存儲過程遇到ERROR 1060 (42S21):Duplicate column問題及解決方案,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
問題描述
實際的日常開發(fā)工作中,經(jīng)常需要對現(xiàn)有表的結(jié)構(gòu)作出變更,涉及到sql相關(guān)的操作,基本都通過初始化腳本來完成,如果初始化腳本運行失敗或者遇到其他問題,可能導(dǎo)致sql部分執(zhí)行,不分失敗的問題,從而造成這個ERROR 1060 (42S21): Duplicate column的問題

問題的解決
方法一:在初始化腳本中添加判斷,對于ERROR 1060 (42S21): Duplicate column可以容忍的錯誤直接跳過繼續(xù)執(zhí)行
方法二:通過存儲過程來實現(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é)
以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關(guān)文章
MySQL中幾種數(shù)據(jù)統(tǒng)計查詢的基本使用教程
這篇文章主要介紹了幾種MySQL中數(shù)據(jù)統(tǒng)計查詢的基本使用教程,包括平均數(shù)和最大最小值等的統(tǒng)計結(jié)果查詢方法,是需要的朋友可以參考下2015-12-12

