您好,登錄后才能下訂單哦!
在MySQL數(shù)據(jù)庫(kù)中使用truncate命令實(shí)現(xiàn)清空數(shù)據(jù)庫(kù)中的所有表?相信很多沒(méi)有經(jīng)驗(yàn)的人對(duì)此束手無(wú)策,為此本文總結(jié)了問(wèn)題出現(xiàn)的原因和解決方法,通過(guò)這篇文章希望你能解決這個(gè)問(wèn)題。
1. 先執(zhí)行select語(yǔ)句生成所有truncate語(yǔ)句
語(yǔ)句格式:
select CONCAT('truncate TABLE ',table_schema,'.',TABLE_NAME, ';') from INFORMATION_SCHEMA.TABLES where table_schema in ('數(shù)據(jù)庫(kù)1','數(shù)據(jù)庫(kù)2');
以名為dbname的數(shù)據(jù)庫(kù)為例,執(zhí)行select語(yǔ)句:
mysql> select CONCAT('truncate TABLE ',table_schema,'.',TABLE_NAME, ';') from INFORMATION_SCHEMA.TABLES where table_schema in ('dbname'); +------------------------------------------------------------+ | CONCAT('truncate TABLE ',table_schema,'.',TABLE_NAME, ';') | +------------------------------------------------------------+ | truncate TABLE dbname.ABOUTUSINFO; | | truncate TABLE dbname.ABUTMENT; | | truncate TABLE dbname.ABUTMENTFILE; | | truncate TABLE dbname.ACHVORG; | | truncate TABLE dbname.WORKFLOWNODE; | | truncate TABLE dbname.ZONESERVICE; | | truncate TABLE dbname.ZONESERVICEFILE; | +------------------------------------------------------------+ 7 rows in set mysql>
2. 把每條truncate語(yǔ)句前后的“|”替換為空字符
用文本編輯器(如 Notepad++)把每條truncate語(yǔ)句前后的“|”替換為空字符,方便后面一次復(fù)制多條執(zhí)行。
替換前:
替換后:
3. 復(fù)制truncate語(yǔ)句到mysql命令行執(zhí)行
復(fù)制truncate語(yǔ)句到mysql命令行執(zhí)行,可以一次復(fù)制多條執(zhí)行。
mysql> truncate TABLE dbname.ZONESERVICE; Query OK, 0 rows affected mysql>
這樣就清空數(shù)據(jù)庫(kù)中所有表啦,簡(jiǎn)單吧~
truncate與drop,delete的對(duì)比
上面說(shuō)過(guò)truncate與delete,drop很相似,其實(shí)這三者還是與很大的不同的,下面簡(jiǎn)單對(duì)比下三者的異同。
看完上述內(nèi)容,你們掌握在MySQL數(shù)據(jù)庫(kù)中使用truncate命令實(shí)現(xiàn)清空數(shù)據(jù)庫(kù)中的所有表的方法了嗎?如果還想學(xué)到更多技能或想了解更多相關(guān)內(nèi)容,歡迎關(guān)注億速云行業(yè)資訊頻道,感謝各位的閱讀!
免責(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)容。