Perintah INSERT INTO

📚 Pengenalan Perintah INSERT INTO

Perintah INSERT INTO digunakan untuk menyisipkan data baru ke dalam tabel. Anda dapat menyisipkan data ke semua kolom atau ke kolom tertentu saja.

Sintaks Dasar INSERT INTO

Ada dua cara untuk menggunakan perintah INSERT INTO:

1. Menyisipkan Data ke Semua Kolom

Sintaks untuk menyisipkan data ke semua kolom:

INSERT INTO nama_tabel
VALUES (nilai1, nilai2, nilai3, ...);

2. Menyisipkan Data ke Kolom Tertentu

Sintaks untuk menyisipkan data ke kolom tertentu:

INSERT INTO nama_tabel (kolom1, kolom2, kolom3, ...)
VALUES (nilai1, nilai2, nilai3, ...);

Contoh Penggunaan INSERT INTO

Misalkan kita memiliki tabel 'pelanggan' dengan struktur berikut:

Kolom Tipe Data
id INT (PRIMARY KEY)
nama VARCHAR(50)
email VARCHAR(100)
kota VARCHAR(50)
usia INT

Menyisipkan Data ke Semua Kolom

Untuk menyisipkan data ke semua kolom:

INSERT INTO pelanggan
VALUES (1, 'John Doe', 'john@example.com', 'Jakarta', 30);

Menyisipkan Data ke Kolom Tertentu

Untuk menyisipkan data ke kolom tertentu:

INSERT INTO pelanggan (id, nama, email, kota, usia)
VALUES (2, 'Jane Smith', 'jane@example.com', 'Bandung', 25);

Menyisipkan Beberapa Baris Data

Anda dapat menyisipkan beberapa baris data sekaligus:

INSERT INTO pelanggan (id, nama, email, kota, usia)
VALUES 
(3, 'Bob Johnson', 'bob@example.com', 'Jakarta', 35),
(4, 'Alice Brown', 'alice@example.com', 'Surabaya', 28),
(5, 'Charlie Wilson', 'charlie@example.com', 'Medan', 32);

Catatan: Sintaks untuk menyisipkan beberapa baris data sekaligus mungkin sedikit berbeda tergantung pada sistem database yang digunakan.

Menyisipkan Data dari Tabel Lain

Anda juga dapat menyisipkan data dari tabel lain menggunakan perintah SELECT:

INSERT INTO pelanggan_baru (nama, email, kota, usia)
SELECT nama, email, kota, usia
FROM pelanggan
WHERE kota = 'Jakarta';

Aturan dalam INSERT INTO

Beberapa aturan yang perlu diperhatikan saat menggunakan INSERT INTO:

INSERT dengan Nilai Default

Jika kolom memiliki nilai default, Anda dapat menggunakan DEFAULT untuk menyisipkan nilai default:

INSERT INTO pelanggan (id, nama, email, kota, usia)
VALUES (6, 'David Lee', 'david@example.com', 'Yogyakarta', DEFAULT);

INSERT dengan NULL

Anda dapat menyisipkan nilai NULL ke kolom yang memungkinkan NULL:

INSERT INTO pelanggan (id, nama, email, kota, usia)
VALUES (7, 'Eva Green', NULL, 'Bali', 29);

INSERT dengan AUTO_INCREMENT

Jika kolom menggunakan AUTO_INCREMENT (atau IDENTITY di SQL Server), Anda tidak perlu menyisipkan nilai untuk kolom tersebut:

-- id akan dihasilkan otomatis
INSERT INTO pelanggan (nama, email, kota, usia)
VALUES ('Frank Miller', 'frank@example.com', 'Makassar', 40);

Coba Sendiri

Anda dapat mencoba kode SQL di atas di editor berikut:

💡 Tips Perintah INSERT INTO

Saat menyisipkan data, selalu gunakan transaksi jika Anda menyisipkan data ke beberapa tabel yang terkait. Ini memastikan bahwa jika ada kesalahan, semua perubahan dapat dibatalkan untuk menjaga integritas data.