Mysql
 sql >> Teknologi Basis Data >  >> RDS >> Mysql

mySQL drop tabel dengan Wildcard hanya menggunakan pernyataan SQL?

Anda dapat menggunakan SQL dinamis untuk melakukannya, di dalam prosedur tersimpan. Itu akan terlihat seperti ini (belum diuji):

CREATE PROCEDURE drop_like (IN pattern VARCHAR(64))
BEGIN
  DECLARE q tinytext;
  DECLARE done INT DEFAULT FALSE;
  DECLARE cur CURSOR FOR
    SELECT CONCAT('DROP TABLE "', table_schema, '"."', table_name, '"')
    FROM information_schema.tables WHERE table_type = 'BASE TABLE' AND table_name LIKE pattern;
  DECLARE CONTINUE HANDLER FOR NOT FOUND SET done = TRUE;
  OPEN cur;

  drop_loop: LOOP
    FETCH cur INTO q;
    IF done THEN
      LEAVE drop_loop;
    END IF;
    PREPARE stmt FROM @q;
    EXECUTE stmt;
    DEALLOCATE PREPARE stmt;
  END LOOP;
  CLOSE cur;
END;


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Cari MySQL dengan PHP dan tampilkan hasilnya di halaman yang sama

  2. Menghubungkan ke MySQL Menggunakan Python

  3. MySQL:Urutkan '1' SEBELUM '101'

  4. Cara menggunakan cURL untuk mengambil data tertentu dari situs web dan kemudian menyimpannya ke database saya menggunakan php

  5. Strapi + Cloud SQL untuk MySQL di Google App Engine - Server tidak dapat memulai dengan benar Kesalahan:getaddrinfo EAI_AGAIN