PostgreSQL
 sql >> Teknologi Basis Data >  >> RDS >> PostgreSQL

postgresql createb dan CREATE DATABASE menghasilkan database yang tidak kosong. apa garpu?

Meringkas dari dokumen template0 pada dasarnya adalah database sistem perawan yang bersih, sedangkan template1 berfungsi sebagai cetak biru untuk database baru yang dibuat dengan perintah createb atau create database dari prompt psql (tidak ada perbedaan yang efektif).

Kemungkinan Anda memiliki beberapa tabel yang bersembunyi di template1, itulah sebabnya tabel tersebut terus muncul kembali di Createdb. Anda dapat mengatasi ini dengan menghapus template1 dan membuatnya kembali dari template0.

createdb -T template0 template1 

Database template1 bisa sangat berguna. Saya sering menggunakan Postgis, jadi saya memiliki semua fungsi dan tabel yang terkait dengan yang terpasang di template1, jadi setiap database baru yang saya buat segera diaktifkan secara spasial.

EDIT . Seperti disebutkan dalam dokumen, tetapi perlu ditekankan, untuk menghapus tempate1 Anda harus memiliki 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. Kunci asing PostgreSQL tidak ada, masalah warisan?

  2. sambungkan ke server postgres di mesin komputasi google

  3. Pencadangan DB Postgresql Praktik ideal

  4. SQLAlchemy, Psycopg2 dan Postgresql COPY

  5. Permintaan PostgreSQL -- kolom tidak ada