BUAT TABEL dalam Skema Postgres

Buat Tabel Dalam Skema Postgres



PostgreSQL adalah salah satu sistem database objek-relasional yang paling populer. Ini adalah perangkat lunak sumber terbuka dan gratis yang memperluas bahasa SQL dengan fitur tambahan untuk menangani beban kerja data yang kompleks. Itu dapat bekerja dengan berbagai tipe data, andal dan aman. Pelajari lebih lanjut tentang fitur PostgreSQL.

Dalam panduan ini, kita akan mempelajari lebih lanjut tentang membuat tabel dalam skema di PostgreSQL.







Skema di PostgreSQL

Database PostgreSQL dapat berisi satu atau lebih skema bernama, setiap skema berisi tabel.



Nama objek yang sama dapat diberikan di beberapa skema tanpa konflik. Misalnya, bagan skema/tabel berikut ini valid:



  • schema_a
    • Tabel 1
    • Meja 2
  • schema_b
    • Tabel 1
    • Meja 2

Anda dapat memikirkan skema seperti direktori di tingkat sistem operasi. Perbedaannya adalah, tidak ada skema bersarang. Pelajari lebih mendalam tentang schema on dokumentasi PostgreSQL .





Mungkin ada beberapa alasan untuk mengimplementasikan skema:

  • Beberapa pengguna menggunakan database yang sama tanpa konflik satu sama lain.
  • Organisasi dan pengelolaan basis data yang lebih baik ke dalam kelompok logis.
  • Aplikasi pihak ketiga dapat membuat skema uniknya sendiri tanpa bertabrakan dengan skema yang ada atau objek lain.

Tabel di PostgreSQL

Setiap database relasional terdiri dari beberapa tabel terkait, masing-masing terdiri dari baris dan kolom. PostgreSQL hadir dengan beberapa tabel bawaan yang berisi berbagai info sistem. Namun, kami juga dapat membuat tabel baru di bawah basis data dan skema yang ditentukan pengguna.



Prasyarat:

Untuk melakukan langkah-langkah yang ditunjukkan dalam panduan ini, Anda memerlukan komponen berikut:

  • Sistem Linux yang dikonfigurasi dengan benar. Belajar lebih tentang menginstal Ubuntu di VirtualBox .
  • Instalasi PostgreSQL yang tepat. Periksa menginstal PostgreSQL di Ubuntu .
  • Akses ke a pengguna PostgreSQL dengan izin PENGGUNAAN ke sebuah basis data.

Untuk tujuan panduan ini, kami akan menggunakan postgres untuk melakukan semua tindakan di PostgreSQL.

Membuat Tabel dalam Skema

Membuat Demo Database

Seperti disebutkan sebelumnya, skema ada di bawah database. Untuk tujuan demonstrasi, kami membuat database dummy, menghindari gangguan pada database yang sudah ada.

Akses shell PostgreSQL sebagai postgres :

$ sudo -i -u postgres psql

Buat basis data baru demo_db:

$ BUAT DATABASE demo_db;

Verifikasi apakah database berhasil dibuat:

$ \l

Terakhir, sambungkan ke database yang baru dibuat:

$ \hubungkan demo_db;

Skema Publik

Setiap database baru di PostgreSQL hadir dengan skema default – publik . Jika Anda mencoba membuat objek tanpa menentukan nama skema, skema publik akan dipilih secara default.

Perintah berikut mencetak semua skema yang tersedia di database PostgreSQL:

$ \dn

Sebagai alternatif, kita juga dapat menggunakan kueri SQL berikut:

$ PILIH * DARI pg_catalog.pg_namespace;

Membuat Skema Baru

Untuk membuat skema baru di bawah database tertentu, struktur perintahnya adalah sebagai berikut:

$ BUAT SKEMA ;

Mengikuti aturan, mari buat skema baru demo_schema:

$ BUAT SKEMA demo_schema;

Periksa daftar skema untuk verifikasi:

$ \dn

Membuat Tabel dalam Skema

Sekarang kita telah membuat skema target, kita dapat mengisinya dengan tabel.

Sintaks untuk membuat tabel adalah sebagai berikut:

BUAT TABEL . (

...
)

Di Sini:

  • skema : Bidang ini menentukan nama skema tempat tabel dibuat. Jika tidak ada nilai yang diberikan, tabel dibuat di bawah publik skema.

Untuk demonstrasi, kami membuat tabel sederhana:

BUAT TABEL demo_schema.demo_table (

CHAR NAMA(64),

ID INT BUKAN NULL

);

Di Sini:

  • Lapangan NAMA ditentukan untuk menyimpan string 64 karakter.
  • Lapangan PENGENAL berisi nilai bilangan bulat. Syarat ' BUKAN NULL ' mengindikasikan bahwa PENGENAL tidak boleh kosong atau nol.

Kami dapat memverifikasi keberadaan tabel menggunakan kueri berikut:

$ PILIH * DARI demo_schema.demo_table;

Memasukkan Data ke dalam Tabel

Dengan tabel di tempat, kita sekarang dapat memasukkan beberapa nilai:

MASUKKAN KE demo_schema.demo_table (NAMA, ID)

NILAI

('PQR', 45),

('IJK', 99)

;

Periksa isi tabel:

$ PILIH * DARI demo_schema.demo_table;

Manajemen Skema

Izin Skema

Dengan bantuan izin skema, kami dapat mengelola peran apa yang dapat melakukan tindakan apa pada skema tertentu. Dari semua kemungkinan hak istimewa, hanya skema yang mendukung BUAT dan PENGGUNAAN.

Untuk memperbarui izin skema untuk peran tertentu, struktur perintahnya adalah sebagai berikut:

$ BERIKAN PADA SKEMA KE ;

Untuk mencabut izin skema untuk peran tertentu, struktur perintahnya adalah sebagai berikut:

$ REVOKE ON SCHEMA TO ;

Verifikasi perubahan menggunakan perintah berikut:

$ \dn+

Ubah Properti Skema

Dengan bantuan dari ALTER SKEMA pernyataan, kita dapat memodifikasi berbagai properti skema. Misalnya: kepemilikan, nama skema, dll.

Untuk mengubah nama skema, gunakan kueri berikut:

$ ALTER SKEMA UBAH NAMA KE ;

Untuk mengubah kepemilikan skema, gunakan kueri berikut:

$ ALTER SKEMA PEMILIK KE ;

Perhatikan bahwa untuk mengubah kepemilikan, pengguna saat ini harus memiliki MEMBUAT izin skema.

Menghapus Skema

Jika skema tidak lagi diperlukan, kita dapat menghapusnya menggunakan MENJATUHKAN pertanyaan:

$ DROP SKEMA

Jika skema berisi objek apa pun, kita membutuhkannya RIAM pengubah:

$ DROP SKEMA CASCADE;

Manajemen Tabel

Izin Tabel

Seperti skema, setiap tabel juga dilengkapi dengan manajemen izin, yang menentukan tindakan apa yang dapat dilakukan peran di atas tabel.

Untuk memeriksa izin tabel, gunakan perintah berikut di psql:

$ \dp

Ubah Properti Tabel

Dengan bantuan dari MENGUBAH TABEL pernyataan, kita dapat memodifikasi banyak aspek dari tabel yang sudah ada.

Misalnya, untuk menjatuhkan kolom, kueri terlihat seperti ini:

$ ALTER TABLE DROP COLUMN ;

Untuk menambahkan kolom baru, kita dapat menggunakan kueri berikut:

$ ALTER TABLE TAMBAHKAN KOLOM ;

Kami juga dapat mengatur kompresi untuk kolom tertentu:

$ ALTER COLUMN SET COMPRESSION ;

Menghapus Tabel

Untuk menghapus tabel dari skema, kita bisa menggunakan the TABEL JATUH pertanyaan:

$ DROP TABLE ;

Perhatikan bahwa tidak seperti skema, skema TABEL JATUH kueri tidak akan menghasilkan kesalahan apakah tabel kosong atau tidak.

Kesimpulan

Dalam panduan ini, kami mendemonstrasikan cara membuat tabel dalam skema di PostgreSQL. Kami membuat skema dummy di dalam database dummy dan membuat tabel di dalam skema. Panduan ini juga menunjukkan cara mengelola berbagai properti skema dan tabel.

Untuk integritas data yang lebih baik, Anda dapat mengonfigurasi a replikasi logis PostgreSQL . Agar database PostgreSQL tetap sehat, Anda dapat mengonfigurasi vakum otomatis untuk membersihkan tupel mati yang ditinggalkan oleh catatan yang dihapus.

Untuk panduan PostgreSQL lainnya, lihat Sub-kategori PostgreSQL .