PostgreSQL
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> PostgreSQL

Cách bỏ nhiều bảng trong PostgreSQL bằng ký tự đại diện

Sử dụng danh sách được phân tách bằng dấu phẩy:

DROP TABLE foo, bar, baz;

Nếu bạn thực sự cần một khẩu súng ngắn, cái này sẽ thực hiện công việc đó:

CREATE OR REPLACE FUNCTION footgun(IN _schema TEXT, IN _parttionbase TEXT) 
RETURNS void 
LANGUAGE plpgsql
AS
$$
DECLARE
    row     record;
BEGIN
    FOR row IN 
        SELECT
            table_schema,
            table_name
        FROM
            information_schema.tables
        WHERE
            table_type = 'BASE TABLE'
        AND
            table_schema = _schema
        AND
            table_name ILIKE (_parttionbase || '%')
    LOOP
        EXECUTE 'DROP TABLE ' || quote_ident(row.table_schema) || '.' || quote_ident(row.table_name) || ' CASCADE ';
        RAISE INFO 'Dropped table: %', quote_ident(row.table_schema) || '.' || quote_ident(row.table_name);
    END LOOP;
END;
$$;

SELECT footgun('public', 'tablename');


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Cách kích hoạt SSL trong PostgreSQL

  2. Lỗi khi kết nối với postgresql bằng sqlalchemy

  3. Tham chiếu đến bí danh cột tổng hợp được chọn trong mệnh đề có trong Postgres

  4. Giá trị lỗi không tồn tại - postgresql CHÈN VÀO sự cố

  5. Tên múi giờ có các thuộc tính giống hệt nhau mang lại kết quả khác khi áp dụng cho dấu thời gian