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

Cách tốt nhất để sao chép một tập hợp con các hàng của bảng từ cơ sở dữ liệu này sang cơ sở dữ liệu khác trong Postgres là gì?

Nguồn:

psql -c "COPY (SELECT * FROM mytable WHERE ...) TO STDOUT" > mytable.copy

Điểm đến:

psql -c "COPY mytable FROM STDIN" < mytable.copy

Điều này giả sử bảng của tôi có cùng một lược đồ và thứ tự cột ở cả nguồn và đích. Nếu không đúng như vậy, bạn có thể thử STDOUT CSV HEADERSTDIN CSV HEADER thay vì STDOUTSTDIN , nhưng tôi chưa thử.

Nếu bạn có bất kỳ trình kích hoạt tùy chỉnh nào trên mytable, bạn có thể cần phải tắt chúng khi nhập:

psql -c "ALTER TABLE mytable DISABLE TRIGGER USER; \
         COPY mytable FROM STDIN; \
         ALTER TABLE mytable ENABLE TRIGGER USER" < mytable.copy


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Truy vấn SQL:Tìm nạp các hàng có thứ tự từ một bảng - II

  2. Làm thế nào để làm cho Khóa chính có chữ số X trong PostgreSQL?

  3. Cayenne, Postgres:thế hệ khóa chính

  4. TypeORM có điều kiện nullable?

  5. Hàm Postgres trả về bảng không trả về dữ liệu trong cột