PostgreSQL - Skema: Panduan untuk Pemula

Hai teman-teman, para ahli basis data masa depan! Hari ini, kita akan memulai perjalanan menarik ke dunia skema PostgreSQL. Jangan khawatir jika Anda masih baru – saya akan menjadi panduan ramah Anda, dan kita akan mengambil langkah demi langkah. Pada akhir panduan ini, Anda akan dapat membuat dan mengelola skema seperti seorang ahli!

PostgreSQL - Schema

Apa Itu Skema?

Sebelum kita masuk ke detilnya, mari pahami apa itu skema. Pensejukkan skema seperti sebuah wadah atau folder dalam basis datamu. Itu seperti memiliki beberapalemari di meja kerja Anda – setiap lemari (skema) dapat berisi banyak item (tabel, pandangan, fungsi, dll.). Organisasi ini membantu menjaga basis datamu rapi dan membuatnya mudah untuk dikelola proyek besar.

Mengapa Menggunakan Skema?

  1. Organisasi: Skema membantu Anda mengelompokkan objek basis data yang terkait bersamaan.
  2. Keamanan: Anda dapat menyetel izin pada tingkat skema.
  3. Namespace: Skema memungkinkan Anda menggunakan nama objek yang sama dalam konteks yang berbeda.

Sekarang, mari kita roll up lengan dan mulai praktik skema PostgreSQL!

Membuat Skema

Membuat skema adalah sama mudah seperti mengatakan "Halo, Dunia!" Berikut caranya:

CREATE SCHEMA my_first_schema;

Selamat! Anda baru saja membuat skema pertama Anda. Mudah, kan? Tetapi, apa jika kita ingin membuat skema untuk pengguna tertentu?

CREATE SCHEMA IF NOT EXISTS user_schema AUTHORIZATION your_username;

Perintah ini membuat skema bernama user_schema dan menetapkan pemiliknya ke your_username. Klausul IF NOT EXISTS seperti jaring keselamatan – itu mencegah kesalahan jika skema sudah ada.

Bekerja dengan Tabel di Skema

Sekarang kita punya skema, mari mengisiinya dengan beberapa tabel!

Membuat Tabel di Skema

Ini adalah sintaksis untuk membuat tabel di skema tertentu:

CREATE TABLE my_first_schema.employees (
id SERIAL PRIMARY KEY,
name VARCHAR(100),
position VARCHAR(100),
hire_date DATE
);

Beriarkan ini:

  • my_first_schema.employees: Ini menentukan bahwa kita membuat tabel employees di my_first_schema.
  • Sisa nya menentukan struktur tabel dengan kolom id, name, position, dan hire_date.

Menyisipkan Data ke Tabel

Sekarang, mari menambahkan beberapa data ke tabel baru kita:

INSERT INTO my_first_schema.employees (name, position, hire_date)
VALUES ('John Doe', 'Software Engineer', '2023-01-15'),
('Jane Smith', 'Project Manager', '2022-11-01');

Perintah ini menyisipkan dua karyawan ke tabel kita. Catat bahwa kita menentukan nama skema sebelum nama tabel.

Mengambil Data dari Tabel di Skema

Untuk mengambil data dari tabel kita, kita gunakan pernyataan SELECT:

SELECT * FROM my_first_schema.employees;

Ini akan menampilkan semua karyawan yang kita tambahkan.

Mengelola Jalur Pencarian Skema

PostgreSQL menggunakan jalur pencarian untuk menentukan skema mana yang harus dicek saat nama objek yang belum dikualifikasi digunakan. Anda dapat melihat jalur pencarian Anda saat ini dengan:

SHOW search_path;

Untuk menambahkan skema baru ke jalur pencarian:

SET search_path TO my_first_schema, public;

Sekarang, Anda dapat merujuk ke tabel employees tanpa prefiks skema:

SELECT * FROM employees;

Menghapus Skema

Ketika Anda tidak lagi memerlukan skema, Anda dapat menghapusnya. Tetapi hati-hati – ini seperti mengosongkan seluruh lemari dalam satu langkah!

DROP SCHEMA my_first_schema;

Ups! Jika skema tidak kosong, PostgreSQL akan mengeluh. Untuk memaksa penghapusan skema dan semua isinya:

DROP SCHEMA my_first_schema CASCADE;

Opsi CASCADE seperti tombol "hapus semua" – gunakanlah bijaksana!

Praktik Terbaik Skema

  1. Gunakan nama yang bermakna: Pilih nama skema yang mencerminkan tujuannya.
  2. Jaga keorganisasian: Kelompokkan objek yang terkait dalam skema yang sama.
  3. Gunakan skema untuk versi: Buat skema terpisah untuk versi yang berbeda dari aplikasimu.
  4. Set izin yang sesuai: Gunakan skema untuk implementasi keamanan tingkat tinggi.

Fungsi yang berkaitan dengan Skema

Berikut adalah tabel yang praktis dari beberapa fungsi yang berkaitan dengan skema di PostgreSQL:

Fungsi Deskripsi
current_schema() Mengembalikan skema saat ini
schema_name(integer) Mengembalikan nama skema dengan OID yang diberikan
to_regnamespace(text) Mengkonversi nama skema ke OID

Kesimpulan

Dan begitu, teman-teman! Kita telah mengunjungi negeri skema PostgreSQL, dari pembuatan hingga penghapusan, dengan beberapa perhentian di tabel dan jalur pencarian sepanjang jalan. Ingat, skema adalah temanmu dalam menjaga basis datamu rapi dan aman.

Buat terus latihan, tetap curiga, dan sebelum Anda tahu, Anda akan membuat desain basis data seperti seorang ahli. Tetap coding, dan semoga kueri Anda selalu berjalan cepat dan data Anda tetap terorganisir!

Credits: Image by storyset