SQL - Default Constraint: A Panduan untuk Pemula

Hai sana, para penggemar SQL yang bersemangat! Hari ini, kita akan melihat dunia yang menakjubkan dari penanganan Default Constraint dalam SQL. Jangan khawatir jika Anda baru belajar pemrograman – saya akan menjadi panduan yang ramah bagi Anda dalam perjalanan ini, menjelaskan segala sesuatu secara langkah demi langkah. Jadi, ambil secangkir kopi, dan mari kita mulai!

SQL - Default Constraint

Konstraint DEFAULT dalam SQL

Bayangkan Anda mengisi formulir, dan ada kolom yang mengatakan "Negara." Jika sebagian besar pengguna Anda berasal dari Amerika Serikat, bagaimana kalau "USA" sudah terisi secara default? Itu tepatnya apa yang dilakukan konstraint DEFAULT dalam SQL – memberikan nilai default untuk kolom saat tidak ada nilai spesifik yang diberikan.

Cara Kerjanya

Saat Anda membuat tabel atau menambahkan kolom baru, Anda dapat menentukan nilai default. Nilai ini akan secara otomatis dimasukkan jika Anda tidak menyediakan nilai spesifik saat menambahkan rekaman baru.

mari lihat contoh berikut:

CREATE TABLE Customers (
CustomerID int NOT NULL,
CustomerName varchar(255) NOT NULL,
ContactName varchar(255),
Country varchar(255) DEFAULT 'USA'
);

Dalam contoh ini, kita membuat tabel "Customers." Kolom "Country" memiliki konstraint DEFAULT yang ditetapkan ke 'USA'. Ini berarti jika kita tidak menentukan negara saat menambahkan pelanggan baru, nilai default 'USA' akan dipakai.

Menyisipkan Data dengan DEFAULT

Sekarang, mari kita tambahkan beberapa pelanggan ke tabel kita:

INSERT INTO Customers (CustomerID, CustomerName, ContactName)
VALUES (1, 'John Doe', 'John');

INSERT INTO Customers (CustomerID, CustomerName, ContactName, Country)
VALUES (2, 'Jane Smith', 'Jane', 'Canada');

Setelah menjalankan pernyataan INSERT ini, tabel kita akan tampak seperti ini:

CustomerID CustomerName ContactName Country
1 John Doe John USA
2 Jane Smith Jane Canada

Perhatikan bagaimana negara John Doe secara otomatis diatur ke 'USA', sedangkan negara Jane Smith ditetapkan secara eksplisit ke 'Canada'.

Menggunakan "DEFAULT" sebagai Nilai

kadang-kadang, Anda mungkin ingin secara eksplisit menggunakan nilai default, meskipun Anda menentukan nilai untuk kolom lain. SQL memungkinkan Anda melakukan ini dengan menggunakan kata kunci DEFAULT.

INSERT INTO Customers (CustomerID, CustomerName, ContactName, Country)
VALUES (3, 'Bob Johnson', 'Bob', DEFAULT);

Ini akan menyisipkan rekaman baru dengan 'USA' sebagai Negara, sama seperti jika kita mengabaikan kolom Country sepenuhnya.

Menambah Konstraint DEFAULT ke Kolom yang Sudah Ada

Apa bila Anda sudah membuat tabel Anda, tapi sekarang Anda ingin menambah konstraint default? Tidak ada masalah! SQL menangani Anda.

Syntax tepatnya mungkin sedikit berbeda tergantung sistem basis data Anda, tapi ini contoh umum:

ALTER TABLE Customers
ALTER COLUMN Country SET DEFAULT 'USA';

Perintah ini memodifikasi tabel "Customers" yang sudah ada, menetapkan nilai default 'USA' untuk kolom "Country."

Catatan Peringatan

Ingat, menambah konstraint default tidak mempengaruhi data yang sudah ada. Itu hanya berlaku untuk rekaman baru atau pembaruan. Jadi jika Anda memiliki nilai kosong di kolom Country sebelumnya, mereka akan tetap kosong sampai Anda memperbarui mereka.

Menghapus Konstraint DEFAULT

Seperti yang kita lakukan saat menambah konstraint default, kita juga dapat menghapusnya. Ini disebut "dropping" konstraint.

Lagi, syntax tepatnya mungkin sedikit berbeda, tapi ini contoh umum:

ALTER TABLE Customers
ALTER COLUMN Country DROP DEFAULT;

Perintah ini menghapus konstraint default dari kolom "Country" di tabel "Customers."

Kapan Menghapus Konstraint DEFAULT

Anda mungkin ingin menghapus konstraint default jika:

  1. Nilai default tidak lagi relevan
  2. Anda ingin menegakkan pengisian manual untuk kolom itu
  3. Anda berencana menghapus kolom sepenuhnya

Penggunaan Praktis Konstraint DEFAULT

Konstraint DEFAULT sangat berguna dalam banyak konteks dunia nyata. Berikut adalah beberapa contoh:

  1. Timestamps: Anda dapat menggunakan DEFAULT untuk secara otomatis mencatat waktu saat rekaman disisipkan.
CREATE TABLE Orders (
OrderID int NOT NULL,
ProductName varchar(255) NOT NULL,
OrderDate datetime DEFAULT CURRENT_TIMESTAMP
);
  1. Bendera Status: Untuk kolom yang mewakili status atau keadaan, Anda dapat menetapkan keadaan awal default.
CREATE TABLE Tasks (
TaskID int NOT NULL,
TaskName varchar(255) NOT NULL,
IsCompleted bit DEFAULT 0
);
  1. Pengaturan Konfigurasi: Saat menyimpan preferensi pengguna, Anda dapat menetapkan default yang berkesan.
CREATE TABLE UserSettings (
UserID int NOT NULL,
Theme varchar(50) DEFAULT 'Light',
NotificationsEnabled bit DEFAULT 1
);

Kesimpulan

Dan begitu, teman-teman! Kita telah berpergian melalui negeri konstraint DEFAULT SQL. Kita telah melihat bagaimana membuatnya, menggunakannya, menambahkannya ke kolom yang sudah ada, dan bahkan menghapusnya saat mereka tidak lagi diperlukan.

Ingat, konstraint DEFAULT adalah seperti para elf kecil yang membantu di basis data Anda, mengisi ruang kosong saat Anda lupa atau tidak memiliki informasi di tangan. Mereka dapat menghemat waktu Anda, mengurangi kesalahan, dan membuat data Anda lebih konsisten.

Saat Anda terus mengembara di dunia SQL, Anda akan menemukan banyak penggunaan lain untuk konstraint DEFAULT. Mereka adalah alat sederhana tapi kuat dalam peralatan SQL Anda. Jadi, maju dan batalkan saja! Selamat coding!

Credits: Image by storyset