ljcarsenal
V2EX  ›  问与答

如何批量删除 mysql 的表?

  •  
  •   ljcarsenal · Aug 31, 2014 · 3194 views
    This topic created in 4304 days ago, the information mentioned may be changed or developed.
    现在mysql中有 以course_ 开头 version_开头,等等许多特定开头的若干table,需要批量删除它们。应该怎么做?我在网上查到的只有
    Select CONCAT( 'drop table ', table_name, ';' ) FROM information_schema.tables Where table_name like 'course_%',
    这样只能把drop talbe的字符串 存到一张临时表里面。我想把各种 需要删除的特定前缀的表名都列出来,并且删除。可以怎么写呢?
    3 replies    2014-08-31 16:33:48 +08:00
    Livid
        1
    Livid  
    MOD
    PRO
       Aug 31, 2014
    用 PHP 或者 Python 写一个小程序解决吧。
    leafgray
        2
    leafgray  
       Aug 31, 2014
    mysqldump xx |grep DROP|grep course_ | mysql xxxx
    =
    zhangzheng
        3
    zhangzheng  
       Aug 31, 2014
    mysqldump -u username -p --no-data dbname | grep ^DROP | grep -e course_ -e version_ > drop.sql
    mysql -u username -p dbname < drop.sql
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   3064 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 50ms · UTC 06:27 · PVG 14:27 · LAX 23:27 · JFK 02:27
    ♥ Do have faith in what you're doing.