Kursus
Sebuah basis data memodelkan entitas kehidupan nyata seperti profesor dan universitas dengan menyimpannya dalam tabel. Setiap tabel berisi data dari satu jenis entitas. Hal ini mengurangi redundansi dengan menyimpan entitas hanya sekali. Sebagai contoh, hanya perlu ada satu baris data yang memuat detail suatu perusahaan tertentu. Terakhir, basis data dapat digunakan untuk memodelkan hubungan antar entitas.
SQL adalah Structured Query Language, yaitu bahasa komputer untuk menyimpan, memanipulasi, dan mengambil data yang disimpan dalam basis data relasional.
SQL adalah bahasa standar untuk Sistem Basis Data Relasional. Semua Sistem Manajemen Basis Data Relasional (RDMS) seperti MySQL, MS Access, Oracle, Sybase, Informix, Postgres, dan SQL Server menggunakan SQL sebagai bahasa basis data standar mereka.
Basis Data PostgreSQL
information_schema adalah meta-basis data yang menyimpan informasi tentang basis data Anda saat ini. Ini bukan khusus untuk PostgreSQL dan juga tersedia di sistem manajemen basis data lain seperti MySQL atau SQL Server. information_schema memiliki beberapa tabel yang dapat Anda kueri dengan sintaks SELECT * FROM yang dikenal:
- tables: informasi tentang semua tabel di basis data Anda saat ini
- columns: informasi tentang semua kolom di semua tabel dalam basis data Anda saat ini
SELECT table_schema, table_name
FROM information_schema.tables;
table_schema | table_name
-------------------+------------------------------
pg_catalog | pg_statistic
pg_catalog | pg_type
pg_catalog | pg_policy
pg_catalog | pg_authid
pg_catalog | pg_shadow
public | university_professors
pg_catalog | pg_settings
...
Perintah dalam SQL
Data Definition Language (DDL)
- CREATE: Membuat tabel baru atau tampilan dari sebuah tabel.
- ALTER: Memodifikasi tabel yang sudah ada.
- DROP: Menghapus seluruh tabel atau objek lain di dalam basis data.
Data Manipulation Language (DML)
- SELECT: Mengambil rekaman tertentu dari satu atau lebih tabel.
- INSERT: Membuat sebuah rekaman di tabel yang sudah ada.
- UPDATE: Memodifikasi rekaman yang sudah ada dalam tabel.
- DELETE: Menghapus rekaman dalam tabel dan bahkan menghapus seluruh tabel.
Melihat Kolom dari Tabel Tertentu
information_schema juga menyimpan informasi tentang kolom di tabel "columns". Setelah Anda mengetahui nama sebuah tabel, Anda dapat mengkueri kolom-kolomnya dengan mengakses tabel "columns".
SELECT table_name, column_name, data_type FROM information_schema.columns WHERE table_name = 'pg_config';
table_name | column_name | data_type
-----------+-------------+-----------
pg_config | name | text
pg_config | setting | text
Di sini, Anda melihat bahwa tabel sistem pg_config hanya memiliki dua kolom – kemungkinan untuk menyimpan pasangan nama-nilai.
Contoh Interaktif
Dalam latihan ini, Anda hanya memerlukan informasi dari skema 'public', yang ditentukan sebagai kolom table_schema dari tabel tables dan columns. Skema 'public' menyimpan informasi tentang tabel dan basis data yang ditentukan pengguna. Jenis table_schema lainnya menyimpan informasi sistem – di sini, kita hanya tertarik pada hal-hal yang ditentukan pengguna.
Anda akan mendapatkan informasi tentang semua nama tabel di basis data saat ini sambil membatasi kueri Anda pada table_schema 'public'.
## Query the right table in information_schema
SELECT table_name
FROM information_schema.tables
## Specify the correct table_schema value
WHERE table_schema = 'public';
Saat kita menjalankan kode di atas, akan dihasilkan keluaran sebagai berikut:

Untuk mempelajari lebih lanjut tentang basis data relasional di SQL, silakan lihat video dari kursus kami Introduction to Relational Databases in SQL.
Konten ini diambil dari kursus DataCamp Introduction to Relational Databases in SQL oleh Timo Grossenbacher.
Lihat juga tutorial kami Introduction to Indexing in SQL.
