主頁(yè) > 知識(shí)庫(kù) > mysql判斷表是否存在然后批量刪除的操作

mysql判斷表是否存在然后批量刪除的操作

熱門標(biāo)簽:百度地圖圖標(biāo)標(biāo)注中心 南通自動(dòng)外呼系統(tǒng)軟件 湖南人工外呼系統(tǒng)多少錢 申請(qǐng)外呼電話線路 廣東人工電話機(jī)器人 石家莊電商外呼系統(tǒng) 日照旅游地圖標(biāo)注 信陽(yáng)穩(wěn)定外呼系統(tǒng)運(yùn)營(yíng)商 芒果電話機(jī)器人自動(dòng)化

1、在網(wǎng)上找了許久都沒(méi)有找到判斷表是否存在,然后模糊刪除的。但是最后找到了一個(gè)曲線救國(guó)的方法。

需求:刪除表中后綴是 _待刪除 的表

1、第一步,找到所有的這樣的表,并且拼裝好刪除表的sql

Select CONCAT( 'DROP TABLE IF EXISTS ', table_name, ';' ) 
FROM information_schema.tables 
Where table_name LIKE '%_待刪除';

執(zhí)行結(jié)果

2、第二步:去一一執(zhí)行刪除語(yǔ)句,有能力的可以去寫一個(gè)腳本執(zhí)行什么的

3、sql解析

3-1 :concat 字符串拼接

3-2 :DROP TABLE IF EXISTS equi_accp_info__待刪除; --判斷這個(gè)表是否存在,如果存在就刪除

補(bǔ)充知識(shí):mysql 判斷表字段是否存在,然后修改

我就廢話不多說(shuō)了,大家還是直接看代碼吧~

-- 判斷 vrv_paw_rule 表是否存在 thresholdMin 字段,不存在則添加; 存在則修改字段類型

DELIMITER ??
DROP PROCEDURE IF EXISTS schema_change??
CREATE PROCEDURE schema_change()
BEGIN
IF NOT EXISTS (SELECT * FROM information_schema.columns WHERE table_schema = DATABASE() AND table_name = 'vrv_paw_rule' AND column_name = 'thresholdMin') THEN
  ALTER TABLE vrv_paw_rule ADD COLUMN thresholdMin BIGINT;
ELSE  
  ALTER TABLE vrv_paw_rule MODIFY COLUMN thresholdMin BIGINT ;
END IF; 
END??
DELIMITER ;

CALL schema_change();

delimit命令:

就是告訴mysql解釋器,該段命令是否已經(jīng)結(jié)束了,mysql是否可以執(zhí)行了,即改變輸入結(jié)束符。

默認(rèn)情況下,delimiter是分號(hào)“;”。

在命令行客戶端中,如果有一行命令以分號(hào)結(jié)束,

那么回車后,mysql將會(huì)執(zhí)行該命令。

但有時(shí)候,不希望MySQL這么做。因?yàn)榭赡茌斎胼^多的語(yǔ)句,且語(yǔ)句中包含有分號(hào)。

默認(rèn)情況下,不可能等到用戶把這些語(yǔ)句全部輸入完之后,再執(zhí)行整段語(yǔ)句。

因?yàn)閙ysql一遇到分號(hào),它就要自動(dòng)執(zhí)行。

這種情況下,就可以使用delimiter,把delimiter后面換成其它符號(hào),如//或$$。

此時(shí),delimiter作用就是對(duì)整個(gè)小段語(yǔ)句做一個(gè)簡(jiǎn)單的封裝。

此命令多用在定義子程序,觸發(fā)程序等mysql自己內(nèi)嵌小程序中。

以上這篇mysql判斷表是否存在然后批量刪除的操作就是小編分享給大家的全部?jī)?nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。

您可能感興趣的文章:
  • MySQL刪除數(shù)據(jù),表文件大小依然沒(méi)變的原因
  • MySQL刪除表的三種方式(小結(jié))
  • MySQL 如何查找并刪除重復(fù)記錄的實(shí)現(xiàn)
  • MySQL 快速刪除大量數(shù)據(jù)(千萬(wàn)級(jí)別)的幾種實(shí)踐方案詳解
  • 刪除mysql服務(wù)的具體方法
  • MySQL 處理重復(fù)數(shù)據(jù)的方法(防止、刪除)
  • MySQL對(duì)數(shù)據(jù)庫(kù)操作(創(chuàng)建、選擇、刪除)
  • Window下如何恢復(fù)被刪除的Mysql8.0.17 Root賬戶及密碼
  • Linux下徹底刪除Mysql 8.0服務(wù)的方法
  • MySQL刪除表操作實(shí)現(xiàn)(delete、truncate、drop的區(qū)別)
  • MySQL刪除了記錄不生效的原因排查

標(biāo)簽:公主嶺 惠州 天津 呼和浩特 合肥 阿里 牡丹江 沈陽(yáng)

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《mysql判斷表是否存在然后批量刪除的操作》,本文關(guān)鍵詞  mysql,判斷,表,是否,存在,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問(wèn)題,煩請(qǐng)?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無(wú)關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《mysql判斷表是否存在然后批量刪除的操作》相關(guān)的同類信息!
  • 本頁(yè)收集關(guān)于mysql判斷表是否存在然后批量刪除的操作的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章