Cara menggunakan insert all columns mysql

Untuk Memasukkan atau menambah data baru dalam sebuah tabel, gunakan perintah

CREATE TABLE `guru` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `nama` varchar(50) NOT NULL,
  `tgl_lahir` date DEFAULT NULL,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=8 DEFAULT CHARSET=latin1
5 diikuti beberapa nilai dan ekspresi lainnya. Kita akan belajar bersama bagaimana input data dalam database SQL (MariaDB khususnya). Tutorial ini tidak hanya untuk MariaDB saja tapi juga berlaku untuk MySQL. Jadi, meskipun database sistem Anda masih menggunakan MySQL Anda masih bisa mengikuti panduan di bawah ini:


Syntax

MariaDB

Syntax

INSERT [LOW_PRIORITY | DELAYED | HIGH_PRIORITY] [IGNORE]
 [INTO] tbl_name [PARTITION (partition_list)] [(col,...)]
 {VALUES | VALUE} ({expr | DEFAULT},...),(...),...
 [ ON DUPLICATE KEY UPDATE
   col=expr
     [, col=expr] ... ]

Penjelasan

Dalam sebuah database, kegiatan menambahkan data baru akan sering dilakukan karena database tanpa data (konten) tidaklah berarti. Untuk menambah (input) data kita akan selalu bertemu dengan perintah

CREATE TABLE `guru` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `nama` varchar(50) NOT NULL,
  `tgl_lahir` date DEFAULT NULL,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=8 DEFAULT CHARSET=latin1
6. Tambahan kata
CREATE TABLE `guru` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `nama` varchar(50) NOT NULL,
  `tgl_lahir` date DEFAULT NULL,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=8 DEFAULT CHARSET=latin1
7, hanyalah bersifat opsional meskipun kita lupa menulisnya, perintah tetap akan dijalankan. Tapi, selalu dianjurkan untuk menulis kata
CREATE TABLE `guru` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `nama` varchar(50) NOT NULL,
  `tgl_lahir` date DEFAULT NULL,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=8 DEFAULT CHARSET=latin1
7 setelah
CREATE TABLE `guru` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `nama` varchar(50) NOT NULL,
  `tgl_lahir` date DEFAULT NULL,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=8 DEFAULT CHARSET=latin1
6 Jadi tepatnya adalah
INSERT INTO guru (id, nama, tgl_lahir)
VALUE(1, 'Sulaiman', '1987-02-21');
0.

Penting: Agar dapat mengikuti tutorial ini, silahkan terlebih dahulu buat table dengan menjalankan perintah berikut:

MariaDB

CREATE TABLE `guru` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `nama` varchar(50) NOT NULL,
  `tgl_lahir` date DEFAULT NULL,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=8 DEFAULT CHARSET=latin1

Contoh Memasukkan / Tambah Data Baru

Berikut beberapa contoh menggunakan

CREATE TABLE `guru` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `nama` varchar(50) NOT NULL,
  `tgl_lahir` date DEFAULT NULL,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=8 DEFAULT CHARSET=latin1
6 untuk menambah data ke dalam database:

Contoh Input Data Cuma Satu (Baris)

MariaDB

INSERT INTO guru (id, nama, tgl_lahir)
VALUE(1, 'Sulaiman', '1987-02-21');

id, nama, tgl_lahir adalah contoh nama kolom. Jika kita tidak sebutkan nama-nama kolomnya seperti contoh di bawah ini, maka seluruh data (VALUE) untuk masing-masing kolom harus ditulis (disebutkan) sesuai urutan semua kolom yang ada dalam tabel tersebut.

MariaDB

INSERT INTO guru
VALUE(NULL, 'Jaka Tingkir', '1987-02-21');

Contoh diatas, kita tidak menyebutkan spesifik kolom apa saya yang hendak ditulis (diisi konten). Dengan demikian, kita harus menulis seluruh Value dari kolom-kolom yang ada dalam tabel tersebut.

Pada contoh berikutnya, kita dapat menentukkan lebih spesifik kolom apa saja yang mau diisi datanya dengan menyebutkan nama-nama kolomnya didalam kurung setelah nama tabel.

Contoh Input Data lebih dari Satu (Baris)

MariaDB

INSERT INTO namatabel (kolom1, kolom2)
VALUES ('konten untuk kolom1', 'konten untuk kolom2'),
  ('konten kedua untuk kolom1', 'konten kedua untuk kolom2')

Harap diperhatikan. Pada contoh diatas, hanya sekedar contoh sintaks. Kenyataannya, konten harus diisi sesuai dengan tipe data yang digunakan pada masing-masing kolom. Untuk input data lebih dari satu (baris) gunakan pemisah koma (,) setelah dalam kurung, yang menunjukkan setiap kurung merupakan satu baris data.

Contoh ini tidak jauh berbeda dengan contoh pertama, hanya saja disini kita menginput data lebih dari satu (baris) yang dipisahkan dengan koma (,) dan mengganti kata VALUE dengan VALUES (plural).

INSERT INTO ... SET

Memasukkan Data Baru dengan Klausa SET

MariaDB

INSERT [LOW_PRIORITY | DELAYED | HIGH_PRIORITY] [IGNORE]
    [INTO] tbl_name [PARTITION (partition_list)]
    SET col={expr | DEFAULT}, ...
    [ ON DUPLICATE KEY UPDATE
      col=expr
        [, col=expr] ... ]

Menggunakan tambahan

INSERT INTO guru (id, nama, tgl_lahir)
VALUE(1, 'Sulaiman', '1987-02-21');
2, pada dasarnya sama seperti kita menggunakan perintah
INSERT INTO guru (id, nama, tgl_lahir)
VALUE(1, 'Sulaiman', '1987-02-21');
3 yang digunakan untuk memeperbarui (update) data. Disini, kita men-set kolom = diikuti data yang hendak kita input.

Contohnya adalah sebagai berikut:

MariaDB

INSERT INTO guru
SET nama = 'Budi', tgl_lahir = '1982-02-11';

INSERT INTO ... SELECT

Memasukkan Data Baru dengan Klausa SELECT

MariaDB

INSERT [LOW_PRIORITY | HIGH_PRIORITY] [IGNORE]
    [INTO] tbl_name [PARTITION (partition_list)] [(col,...)]
    SELECT ...
    [ ON DUPLICATE KEY UPDATE
      col=expr
        [, col=expr] ... ]

Perintah

INSERT INTO guru (id, nama, tgl_lahir)
VALUE(1, 'Sulaiman', '1987-02-21');
4 digunakan untuk menyeleksi tabel lain. Artinya, kita dapat memasukkan (input) data dari Table lain. Ini, dapat menghemat waktu kita sehingga tidak perlu menginput ulang data. Perlu diperhatikan tipe data yang digunakan juga harus sesuai pada kolom-kolom antara dua table tersebut.

Pada contoh dibawah ini, saya memiliki dua table (guru dan staf). Table guru sebelumnya sudah dibuat dan berisi data. tabel staf masih kosong kemudian saya isi datanya dengan cara menyalin dari table guru tersebut.

Pertama-tama, silahkan jalankan perintah berikut:

MariaDB

CREATE TABLE staf LIKE guru; 

Perintah diatas digunakan untuk membuat table baru staf dengan format (termasuk definisi dan tipe datanya) sama seperti table guru. Selanjutnya saya isi datanya dengan menyalin dari table guru yang memiliki kolom id=1.

MariaDB

INSERT INTO staf
SELECT * FROM guru WHERE id = 1;

LOAD DATA INFILE

Menambahkan Data dari sebuah File

INSERT INTO guru (id, nama, tgl_lahir)
VALUE(1, 'Sulaiman', '1987-02-21');
5 adalah perintah yang digunakan untuk memasukkan data dari sebuah file terpisah. Agar file tersebut dapat dibaca dan bisa dimasukkan dalam database SQL, harus memiliki format yang sesuai.

Pada contoh dibawah ini, saya membuat sebuah file dengan notepad (text editor) dan saya simpan dengan format

INSERT INTO guru (id, nama, tgl_lahir)
VALUE(1, 'Sulaiman', '1987-02-21');
6 kemudian saya simpan dalam drive
INSERT INTO guru (id, nama, tgl_lahir)
VALUE(1, 'Sulaiman', '1987-02-21');
7 (root). File tersebut saya beri nama
INSERT INTO guru (id, nama, tgl_lahir)
VALUE(1, 'Sulaiman', '1987-02-21');
8 dan saya isi dengan data sebagai berikut:

dataguru.txt

CREATE TABLE `guru` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `nama` varchar(50) NOT NULL,
  `tgl_lahir` date DEFAULT NULL,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=8 DEFAULT CHARSET=latin1
0

Data diatas, terlihat seperti terbagi dalam 3 kolom (id, nama, tgl_lahir). Dalam text editor (atau Notepad) setiap kolom cukup dipisahkan dengan menekan tab pada keyboard. Setiap baris, diakhiri dengan Enter.

Untuk mengimport (memasukkan) data dari file ke dalam database, saya menjalankan perintah berikut:

MariaDB

CREATE TABLE `guru` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `nama` varchar(50) NOT NULL,
  `tgl_lahir` date DEFAULT NULL,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=8 DEFAULT CHARSET=latin1
1

Hasilnya terlihat seperti ini:

MariaDB

CREATE TABLE `guru` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `nama` varchar(50) NOT NULL,
  `tgl_lahir` date DEFAULT NULL,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=8 DEFAULT CHARSET=latin1
2

Kemudian, saya lihat hasilnya apakah benar data tersebut sudah masuk dalam database, dengan menjalankan perintah berikut:

Insert into mysql untuk apa?

Perintah INSERT INTO dapat di gunakan untuk menambahkan record baru ke dalam tabel.

Apa itu insert di SQL?

2. INSERT. Menambahkan sebuah data ke dalam tabel merupakan salah satu aktivitas yang paling sering dilakukan ketika belajar SQL. INSERT adalah bahasa query yang digunakan untuk melakukan insert data atau menambahkan data baru pada database. Perintah ini dapat digunakan untuk menambahkan record baru ke dalam tabel.