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

postgresql createdb và TẠO CƠ SỞ DỮ LIỆU mang lại một cơ sở dữ liệu không trống. cái gì cái nĩa?

Tóm tắt từ tài liệu template0 về cơ bản là một cơ sở dữ liệu hệ thống sạch sẽ, trong khi template1 đóng vai trò như một bản in màu xanh lam cho bất kỳ cơ sở dữ liệu mới nào được tạo bằng lệnh createb hoặc tạo cơ sở dữ liệu từ dấu nhắc psql (không có sự khác biệt về hiệu quả).

Có khả năng bạn có một số bảng ẩn trong template1, đó là lý do tại sao chúng tiếp tục xuất hiện lại trên createb. Bạn có thể giải quyết vấn đề này bằng cách bỏ template1 và tạo lại nó từ template0.

createdb -T template0 template1 

Cơ sở dữ liệu template1 có thể cực kỳ hữu ích. Tôi sử dụng Postgis rất nhiều, vì vậy tôi đã cài đặt tất cả các hàm và bảng liên quan đến nó trong template1, vì vậy bất kỳ cơ sở dữ liệu mới nào tôi tạo đều được kích hoạt theo không gian ngay lập tức.

CHỈNH SỬA . Như đã lưu ý trong tài liệu, nhưng đáng nhấn mạnh, để xóa tempate1, bạn cần có pg_database.datistemplate =false set.




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Không thể kết nối postgreSQL với psycopg2

  2. Tại sao hàm postgres trigram word_similarity không sử dụng chỉ mục gin?

  3. Thả ràng buộc theo tên trong Postgresql

  4. Cách lấy dữ liệu từ Json sang nhiều cột PostgreSQL

  5. người dùng được đánh dấu bằng nhãn theo thời gian cho mỗi tháng