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 SKEMAMengikuti 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
Untuk mencabut izin skema untuk peran tertentu, struktur perintahnya adalah sebagai berikut:
$ REVOKEVerifikasi 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
Untuk mengubah kepemilikan skema, gunakan kueri berikut:
$ ALTER SKEMA
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
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
Untuk menambahkan kolom baru, kita dapat menggunakan kueri berikut:
$ ALTER TABLE
Kami juga dapat mengatur kompresi untuk kolom tertentu:
$ ALTER COLUMNMenghapus 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 .