溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

動(dòng)態(tài)更新數(shù)據(jù)庫(kù)腳本——Mysql

發(fā)布時(shí)間:2020-07-28 09:59:33 來(lái)源:網(wǎng)絡(luò) 閱讀:409 作者:沙漏半杯 欄目:編程語(yǔ)言

具體的upgrade腳本如下:


動(dòng)態(tài)刪除索引


DROP PROCEDURE IF EXISTS UPGRADE;

?

DELIMITER $$

CREATE PROCEDURE UPGRADE()

BEGIN

-- RESOURCE.AUDIO_ATTRIBUTE

IF EXISTS(SELECT * FROM INFORMATION_SCHEMA.STATISTICS WHERE TABLE_SCHEMA = 'RESOURCE' AND TABLE_NAME = 'AUDIO_ATTRIBUTE' AND INDEX_NAME = 'resource_publish_resource_id_index')

? ? THEN?

? ? ? ? ALTER TABLE `AUDIO_ATTRIBUTE` DROP INDEX resource_publish_resource_id_index;

END IF;

END$$

DELIMITER ;

CALL UPGRADE();

DROP PROCEDURE IF EXISTS UPGRADE;


動(dòng)態(tài)添加字段


DROP PROCEDURE IF EXISTS UPGRADE;

?

DELIMITER $$

CREATE PROCEDURE UPGRADE()

BEGIN

-- HOMEWORK.HOMEWORK_QUESTION_GROUP.FROM_ID

IF NOT EXISTS(SELECT * FROM INFORMATION_SCHEMA.COLUMNS WHERE TABLE_SCHEMA = 'HOMEWORK' AND TABLE_NAME = 'HOMEWORK_QUESTION_GROUP' AND COLUMN_NAME = 'FROM_ID')

? ? THEN?

? ? ? ? ALTER TABLE `HOMEWORK_QUESTION_GROUP` ADD COLUMN FROM_ID VARCHAR(50) NULL;

END IF;

?

-- HOMEWORK.HOMEWORK_QUESTION_GROUP.QUESTION_TYPE

IF NOT EXISTS(SELECT * FROM INFORMATION_SCHEMA.COLUMNS WHERE TABLE_SCHEMA = 'HOMEWORK' AND TABLE_NAME = 'HOMEWORK_QUESTION_GROUP' AND COLUMN_NAME = 'QUESTION_TYPE')

? ? THEN?

? ? ? ? ALTER TABLE `HOMEWORK_QUESTION_GROUP` ADD COLUMN QUESTION_TYPE VARCHAR(50) NULL;

END IF;

-- HOMEWORK.HOMEWORK_QUESTION_GROUP.DIFFICULTY

IF NOT EXISTS(SELECT * FROM INFORMATION_SCHEMA.COLUMNS WHERE TABLE_SCHEMA = 'HOMEWORK' AND TABLE_NAME = 'HOMEWORK_QUESTION_GROUP' AND COLUMN_NAME = 'DIFFICULTY')

? ? THEN?

? ? ? ? ALTER TABLE `HOMEWORK_QUESTION_GROUP` ADD COLUMN DIFFICULTY VARCHAR(50) NULL;

END IF;

END$$

DELIMITER ;

CALL UPGRADE();

DROP PROCEDURE IF EXISTS UPGRADE;


其他語(yǔ)法類似,主要區(qū)分EXISTS和 NOT EXISTS的用法。?

歡迎工作一到五年的Java工程師朋友們加入Java技術(shù)交流:659270626
群內(nèi)提供免費(fèi)的Java架構(gòu)學(xué)習(xí)資料(里面有高可用、高并發(fā)、高性能及分布式、Jvm性能調(diào)優(yōu)、Spring源碼,MyBatis,Netty,Redis,Kafka,Mysql,Zookeeper,Tomcat,Docker,Dubbo,Nginx等多個(gè)知識(shí)點(diǎn)的架構(gòu)資料)合理利用自己每一分每一秒的時(shí)間來(lái)學(xué)習(xí)提升自己,不要再用"沒(méi)有時(shí)間“來(lái)掩飾自己思想上的懶惰!趁年輕,使勁拼,給未來(lái)的自己一個(gè)交代!


向AI問(wèn)一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI