Pernyataan SQL INSERT INTO menambahkan data ke tabel yang baru dibuat atau tabel yang sudah ada. Kita dapat menambahkan satu record atau beberapa record dalam sebuah tabel dengan menggunakan query ini.
Ada dua cara yang mungkin untuk menambahkan data ke tabel:
- Sebutkan nama bidang dan nilai yang ditambahkan ke tabel.
- Jika kita menambahkan nilai untuk semua bidang tabel, kita tidak perlu menyebutkan nama bidang dalam pernyataan atau kueri SQL INSERT INTO. Namun, pastikan urutan nilainya sama dengan urutan kolom pada tabel.
Sintaks untuk pernyataan SQL INSERT INTO dengan menyebutkan nama bidang dalam pernyataan atau kueri:
INSERT INTO Table_Name (Column_Name1, Column_Name2, Column_Name3, Column_Name4, Column_Name5) VALUES (Value1, Value2, Value3, Value4, Value5);
Column_Name1, Column_Name2, Column_Name3, Column_Name4, Column_Name5 adalah nama bidang dalam tabel yang ingin kita tambahkan nilai.
Sintaks untuk pernyataan SQL INSERT INTO tanpa menyebutkan nama bidang dalam pernyataan atau kueri:
INSERT INTO Table_Name VALUES (Value1, Value2, Value3, Value4, Value5);
Sintaks di atas digunakan untuk menyisipkan nilai di semua bidang tabel.
Pernyataan berikut akan membuat delapan catatan dalam tabel Pelanggan.
MASUKKAN KE Pelanggan (Nomor_Pelanggan, Nama_Pelanggan, Usia, Alamat, Gaji)
NILAI (1, 'Rakesh', 32, 'Ahmedabad', 20000);
MASUKKAN KE Pelanggan (Nomor_Pelanggan, Nama_Pelanggan, Usia, Alamat, Gaji)
NILAI (2, 'Kamlesh', 27, 'Delhi', 15000);
MASUKKAN KE Pelanggan (Nomor_Pelanggan, Nama_Pelanggan, Usia, Alamat, Gaji)
NILAI (3, 'kaustubh', 25, 'Pune', 20000);
MASUKKAN KE Pelanggan (Nomor_Pelanggan, Nama_Pelanggan, Usia, Alamat, Gaji)
NILAI (4, 'Chaitali', 25, 'Mumbai', 15000);
MASUKKAN KE Pelanggan (Nomor_Pelanggan, Nama_Pelanggan, Usia, Alamat, Gaji)
NILAI (5, 'Himesh', 29, 'Delhi', 45000);
MASUKKAN KE Pelanggan (Nomor_Pelanggan, Nama_Pelanggan, Usia, Alamat, Gaji)
NILAI (6, 'Komal', 22, 'MP', 45000);
MASUKKAN KE Pelanggan (Nomor_Pelanggan, Nama_Pelanggan, Usia, Alamat, Gaji)
NILAI (7, 'Nikhlesh', 28, 'Delhi', 40000);
MASUKKAN KE Pelanggan (Nomor_Pelanggan, Nama_Pelanggan, Usia, Alamat, Gaji)
NILAI (8, 'Kamolika', 24, 'Pune', 50000);
Dalam pernyataan INSERT INTO di atas, kami telah menambahkan catatan di tabel Pelanggan dengan menyebutkan nama bidang tabel.
Kita bisa menambahkan data ke tabel tanpa menyebutkan nama field tabel:
Contoh pernyataan berikut akan membuat enam catatan dalam tabel Pelanggan.
MASUKKAN KE NILAI Pelanggan (9, 'Raman', 30, 'Mumbai', 35500);
MASUKKAN KE NILAI Pelanggan (10, 'Manoj', 40, 'Pune', 45000);
MASUKKAN KE NILAI Pelanggan (11, 'Shweta', 26, 'MP', 42500);
MASUKKAN KE NILAI Pelanggan (12, 'Shivani', 25, 'Delhi', 50000);
MASUKKAN KE NILAI Pelanggan (13, 'Rahul', 28, 'Nashik', 34000);
MASUKKAN KE NILAI Pelanggan (14, 'Sahil', 22, 'Nashik', 27000);
Dalam contoh pernyataan INSERT INTO di atas, kami telah menambahkan catatan tanpa menyebutkan nama bidang dalam kueri.
Semua kueri di atas akan menghasilkan data berikut di tabel Pelanggan seperti yang ditunjukkan di bawah ini:
Id_Pelanggan | Nama_Pelanggan | Usia | Alamat | Gaji |
1 | Rakesh | 32 | Ahmedabad | 20000 |
2 | Kamlesh | 27 | Delhi | 15000 |
3 | Kausubh | 25 | Pune | 20000 |
4 | Chaitali | 25 | Mumbai | 15000 |
5 | Himesh | 29 | Delhi | 45000 |
6 | Komal | 22 | MP | 45000 |
7 | Nikhlesh | 28 | Delhi | 40000 |
8 | Kamolika | 24 | Pune | 50.000 |
9 | Raman | 30 | Mumbai | 35500 |
10 | Manoj | 40 | Pune | 45000 |
11 | Shweta | 26 | MP | 42500 |
12 | Shivani | 25 | Delhi | 50.000 |
13 | Rahul | 28 | Nashik | 34000 |
14 | Sahil | 22 | Nashik | 27000 |
MASUKKAN KE Pernyataan SELECT.
Pernyataan INSERT INTO SELECT juga merupakan cara untuk menambahkan record ke tabel. Pernyataan INSERT INTO SELECT digunakan untuk menyisipkan record ke dalam satu tabel dari tabel yang ada. Di mana semua bidang dan urutan bidang adalah sama.
Kami akan membuat Pelanggan lain dan menggunakan bidang yang sama dari tabel Pelanggan di atas.
CREATE TABLE Customers (Customer_Id int Primary key, Customer_Name varchar(40), Age int, Address Varchar(20), Salary int);
Gunakan perintah DESC diikuti dengan nama tabel Pelanggan untuk menunjukkan struktur tabel.
Fields | Ketik | Nol | Kunci | Bawaan | Ekstra |
Id_Pelanggan | Int(11) | TIDAK | PRI | NULL | |
Nama_Pelanggan | Varchar(40) | YA | NULL | ||
Usia | Int(11) | YA | NULL | ||
Alamat | Varchar(20) | YA | NULL | ||
Gaji | Int(11) | YA | NULL |
Kita dapat menambahkan record ke dalam tabel melalui pernyataan SELECT di atas tabel lain.
Sintaks INSERT INTO SELECT:
INSERT INTO Table1 [(Column_Name1, Column_Name2, Column_Name3, Column_Name4, Column_Name5)] SELECT Column_Name1, Column_Name2, Column_Name3, Column_Name4, Column_Name5 FROM Table2;
Contoh pernyataan INSERT INTO SELECT:
INSERT INTO Customers SELECT * FROM Customer;
Dalam contoh kueri INSERT INTO SELECT di atas, semua record dari tabel Customer ditambahkan ke tabel Customers.
Data berikut di tabel Pelanggan ditampilkan di bawah ini:
Id_Pelanggan | Nama_Pelanggan | Usia | Alamat | Gaji |
1 | Rakesh | 32 | Ahmedabad | 20000 |
2 | Kamlesh | 27 | Delhi | 15000 |
3 | Kausubh | 25 | Pune | 20000 |
4 | Chaitali | 25 | Mumbai | 15000 |
5 | Himesh | 29 | Delhi | 45000 |
6 | Komal | 22 | MP | 45000 |
7 | Nikhlesh | 28 | Delhi | 40000 |
8 | Kamolika | 24 | Pune | 50.000 |
9 | Raman | 30 | Mumbai | 35500 |
10 | Manoj | 40 | Pune | 45000 |
11 | Shweta | 26 | MP | 42500 |
12 | Shivani | 25 | Delhi | 50.000 |
13 | Rahul | 28 | Nashik | 34000 |
14 | Sahil | 22 | Nashik | 27000 |