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

問(wèn)題的解決
方法一:在初始化腳本中添加判斷,對(duì)于ERROR 1060 (42S21): Duplicate column可以容忍的錯(cuò)誤直接跳過(guò)繼續(xù)執(zhí)行
方法二:通過(guò)存儲(chǔ)過(guò)程來(lái)實(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)文章
mysql8.0使用PXC實(shí)現(xiàn)高可用的示例(Rocky8.0環(huán)境)
本文主要介紹了在Rocky8.0環(huán)境下搭建MySQL8.0的Percona XtraDB Cluster(PXC)集群,,可以實(shí)現(xiàn)數(shù)據(jù)實(shí)時(shí)同步、讀寫(xiě)分離和高可用性,具有一定的參考價(jià)值,感興趣的可以了解一下2025-02-02
Linux利用UDF庫(kù)實(shí)現(xiàn)Mysql提權(quán)
根據(jù)MySQL函數(shù)族的可擴(kuò)展機(jī)制,意味著用戶(hù)可以自己建立包含有自定義函數(shù)的動(dòng)態(tài)庫(kù)來(lái)創(chuàng)建自定義函數(shù),簡(jiǎn)稱(chēng)udf2014-07-07
MySQL錯(cuò)誤提示:sql_mode=only_full_group_by完美解決方案
有時(shí)候遇到數(shù)據(jù)庫(kù)重復(fù)數(shù)據(jù),需要將數(shù)據(jù)進(jìn)行分組,并取出其中一條來(lái)展示,這時(shí)就需要用到group by語(yǔ)句,下面這篇文章主要給大家介紹了關(guān)于MySQL錯(cuò)誤提示:sql_mode=only_full_group_by的完美解決方案,需要的朋友可以參考下2022-10-10
MySQL算術(shù)/比較/邏輯/位/運(yùn)算符與正則舉例詳解
每種數(shù)據(jù)庫(kù)都支持SQL語(yǔ)句,但是它們也都有各自支持的運(yùn)算符,下面這篇文章主要給大家介紹了關(guān)于MySQL算術(shù)/比較/邏輯/位/運(yùn)算符與正則的相關(guān)資料,文中通過(guò)實(shí)例代碼介紹的非常詳細(xì),需要的朋友可以參考下2023-02-02
MySQL8.0移除傳統(tǒng)的.frm文件原因及解讀
MySQL 8.0移除傳統(tǒng)的.frm文件,采用基于InnoDB的事務(wù)型數(shù)據(jù)字典,主要解決了元數(shù)據(jù)不一致、性能優(yōu)化、架構(gòu)簡(jiǎn)化、增強(qiáng)功能支持、兼容性與升級(jí)問(wèn)題,這一變革提高了數(shù)據(jù)庫(kù)的可靠性和性能,為未來(lái)的高級(jí)功能奠定了基礎(chǔ)2025-03-03
Mysql數(shù)據(jù)庫(kù)報(bào)錯(cuò)2003?Can't?connect?to?MySQL?server?on?
最近在用mysql,打開(kāi)mysql的圖形化界面要連接時(shí)出現(xiàn)2003錯(cuò)誤,所以下面這篇文章主要給大家介紹了關(guān)于Mysql數(shù)據(jù)庫(kù)報(bào)錯(cuò)2003?Can't?connect?to?MySQL?server?on?'localhost'?(10061)的解決方式,需要的朋友可以參考下2022-09-09

