Cara Menambahkan Auto Increment dan Primary Key Pada Tabel MySQL Dengan phpMyAdmin 4.5.2
Ketika saya beralih dari Apache2Triad ke XAMPP, Saya agak sedikit kebingungan dengan tampilan phpMyAdmin-nya, terutama pada saat saya ingin menambahkan primary key dan auto increment pada tabel yang akan saya buat. Tampilannya berbeda mungkin di karenakan versi phpMyAdmin yang digunakan oleh Xampp berbeda dengan versi yang digunakan oleh Apache2Triad. Tapi sebenarnya menambahkan auto increment dan primary key di phpMyAdmin itu mudah saja, meskipun versi atau tampilan dari phpMyAdmin-nya berbeda – beda.
Fungsi Auto_Increment dan Primary Key
Fungsi Auto_Increment dan Primary Key
1. Auto Increment.
Berdasarkan pengalaman, auto_increment pada sebuah tabel ini biasanya digunakan supaya bila ada data baru yang masuk kedalam database/tabel, maka data tersebut tidak akan tertimpa.
Contoh :
Pada sebuah website terdapat form atau halaman buku tamu, halaman buku tamu tersebut terhubung dengan sebuah tabel database MySQL sebagai tempat menyimpan data – data orang yang berkomentar pada buku tamu website. Bila anda tidak menambahkan AUTO_INCREMENT (Primary key) pada tabel tersebut, maka pada saat ada data baru/user baru yang berkomentar, akan terjadi sebuah error atau duplikat entry, atau dengan kata lain data baru yang di masukan oleh user tidak akan di simpan kedalam tabel database.
Pesan error akibat tidak menambahkan auto increment biasanya seperti ini “ Maybe : Duplicate entry '0' for key 'PRIMARY'
Sedangkan kalau kita menambahkan AUTO INCREMENT, maka jika ada data/komentar baru yang di inputkan oleh user akan secara otomatis ditambahkan
2. Primary Key
Di dalam sebuah tabel, harus ada sebuah field yang digunakan sebagai field Primery Key. Maksud dari field Primary Key, yaitu field tersebut digunakan sebagai field index utama field kunci pengurutan data dari sebuah tabel.
Ada dua cara yang bisa Anda lakukan untuk menambahkan Auto_Increment dan Primary key pada sebuah tabel database dan berikut adalah Cara Menambahkan Auto Increment dan Primary Key Pada Tabel MySQL Dengan phpMyAdmin 4.5.2 :
1. Menggunakan Query
2. Primary Key
Di dalam sebuah tabel, harus ada sebuah field yang digunakan sebagai field Primery Key. Maksud dari field Primary Key, yaitu field tersebut digunakan sebagai field index utama field kunci pengurutan data dari sebuah tabel.
Ada dua cara yang bisa Anda lakukan untuk menambahkan Auto_Increment dan Primary key pada sebuah tabel database dan berikut adalah Cara Menambahkan Auto Increment dan Primary Key Pada Tabel MySQL Dengan phpMyAdmin 4.5.2 :
1. Menggunakan Query
Menggunakan query maksudnya adalah kita membuat tabel kemudian menambahkan auto_increment beserta primary key-nya menggunakan script yang dijalankan lewat menu SQL yang terdapat di phpMyAdmin. Bila sudah membuat database dan kemudian ingin membuat sebuah tabel maka Anda cukup klik tab/menu SQL kemudian pastekan scriptnya.
Contoh query/script untuk membuat tabel :
CREATE TABLE `data_jomblo` (
`id` int(20) NOT NULL auto_increment,
`nama` varchar(50) NOT NULL,
`email` varchar(60) NOT NULL,
`alamat` varchar(30) NOT NULL,
`alasan_menjomblo` text NOT NULL,
`tanggal` varchar(18) NOT NULL,
`ip` varchar(32) NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=10 ;
2. Menggunakan cara biasa
Kalau cara pertama menggunakan Query atau script, maka cara kedua adalah cara yang biasa dilakukan, atau cukup klik – klik saja. Kita bisa menambahkan auto increment secara langsung dengan mencentang pilihan A_I pada saat proses pembuatan tabel.
Bila pilihan A_I dicentang maka secara otomatis primary key juga akan di tambahkan seperti yang terlihat pada gambar berikut
Bila tabelnya sudah disimpan maka akan terlihat seperti pada gambar di bawah ini
*Note
Ketika Anda menambahkan "Auto Increment (A_I)" pada salah satu data di kolom maka secara otomatis akan membuat sebuah Primary key (kunci utama)
judulnya aja udah s
ReplyDeleteASyiikkk dapat disini ilmunya..hahah..trims ya Kang.
ReplyDeletewah ternyata mas ahmad jago coding jga yah :D
ReplyDeletegan, misal incrementnya digabung sama field lain caranya gimana ya? misal tanggal lahir jadi gini 10091998001, 05031994002,24052000003... dst
ReplyDeletekalau kasus seperti itu,, Saya belum pernah nyoba,, mungkin lain kali akan saya jelaskan...
Deletemakasih gan akhirnya dapat jalan kluarnya masalah saya setelah melihat artikel yang anda posting :D
ReplyDeletepermisi min kan awalnya saya memiliki tablel barang, didalam tabel barang ada "Id" dimana saat itu saya menambahkan Primary Key di situ, dan waktu saya mau menambahkan auto increment malah error, kira-kira untuk solusinya bagaimana ya min ?
ReplyDeleteTerimakasih.
Selamat siang min maaf saya mau bertanya, sebelumnya saya membuat tabel barang (Id) dimana Id tersebut sudah saya set menjadi Primary Key dan waktu saya mau menambahkan auto increment dengan cara mencentang pilihan A_I, malah error min, untuk cara mengatasinya bagaimana min ?
ReplyDeleteTerima Kasih.
errornya gimana bro, ada pesannya gak ??? dicoba lagi saja bro..
Deletesama nih kasusnya
Deletecoba buatnya dari awal mba, pas buat tambahin atau klik auto increment,maka biasanya di otomatis milih primary key
DeleteGan semisal tanya,semisal buat nomer 1.2.3.4.5
ReplyDeleteNah ketika data nomer 5 sy hapus,maka ketika sy masukan data lg,dia apa akan kembali ke 5 lg,apa malah meloncat ke 6,jd semisal jd begi 1.2.3.4.6
Mhn infonya gan.
Ni email sy adiadipro.aa@gmail.com
Setahu saya kalau diurutan databasenya, kalau sudah dihapus, tidak akan berurutan lagi, namun meloncat nomornya, misal 5 sudah dihapus maka nanti selanjutnya data yang masuk akan di tulis 6, tapi kalau di PHPnya saat ditampilkannya bisa dirubah jadi berurutan tidak mengikuti data id yang ada didatabase, baca : https://www.root93.co.id/2017/05/menampilkan-database-dari-angka-satu-1.html
Deletepak, saya mau tanya
ReplyDeleteuntuk membuat prefix auto increment itu gimana caranya, pak?
contoh; M001, M002, M003,... dst.
caranya bisa buat tabel terpisah dulu mas...
Deleteexample :
buat dua tabel saja
CREATE TABLE table1_seq
(
id INT NOT NULL AUTO_INCREMENT PRIMARY KEY
);
CREATE TABLE table1
(
id VARCHAR(7) NOT NULL PRIMARY KEY DEFAULT '0', name VARCHAR(30)
);
terus buat trigger...
DELIMITER $$
CREATE TRIGGER tg_table1_insert
BEFORE INSERT ON table1
FOR EACH ROW
BEGIN
INSERT INTO table1_seq VALUES (NULL);
SET NEW.id = CONCAT('M', LPAD(LAST_INSERT_ID(), 3, '0'));
END$$
selanjutnya cuba insert datanya
DELIMITER ;
atau coba kek gini saja,, contoh :
Deletecreate table namatabel (
id int(3) unsigned zerofill not null auto_increment primary key,
name varchar(30) not null
);
insert into namatabel set name = 'John';
insert into namatabel set name = 'Mark';
select concat('M', id) as id, name from namatabel;
Tahanks min sangat membantu
ReplyDeleteThanks ilmunya min, semoga berkah Aamiin..
ReplyDeletebagaiman cara mengurutkan no pada 2 tabel yang digabungkan, jadi karena tabel di gabungkan nomor nya tidak berurutan, jadi nya seperti ini, 1,1,2,2,3,3
ReplyDeletekarena tabelya digabungkan nomornya pun tidak berurutan,
mohon pencerahannya
saya pikir mas perlu multiple insert kemudian supaya sama ditabel lain, pake last insert id
Delete