Tutorial Menggunakan Urutan di MySQL

Urutan adalah himpunan bilangan bulat 1, 2 3, … yang dihasilkan dalam rangka permintaan. Urutan yang sering digunakan dalam database karena banyak aplikasi membutuhkan setiap baris dalam sebuah tabel berisi nilai unik, dan urutan menyediakan cara mudah untuk menghasilkan mereka. Bab ini menjelaskan cara menggunakan urutan di MySQL.

Menggunakan kolom AUTO_INCREMENT:

Cara paling sederhana dalam MySQL menggunakan Sequences adalah untuk mendefinisikan kolom sebagai AUTO_INCREMENT dan meninggalkan sisanya dari hal-hal ke MySQL untuk mengurus.

contoh:

Coba contoh berikut. Ini akan membuat tabel dan setelah itu akan memasukkan beberapa baris dalam tabel di mana tidak diperlukan untuk memberikan record ID karena auto bertambah oleh MySQL.

mysql> CREATE TABLE insect
    -> (
    -> id INT UNSIGNED NOT NULL AUTO_INCREMENT,
    -> PRIMARY KEY (id),
    -> name VARCHAR(30) NOT NULL, # type of insect
    -> date DATE NOT NULL, # date collected
    -> origin VARCHAR(30) NOT NULL # where collected
);
Query OK, 0 rows affected (0.02 sec)
mysql> INSERT INTO insect (id,name,date,origin) VALUES
    -> (NULL,'housefly','2001-09-10','kitchen'),
    -> (NULL,'millipede','2001-09-10','driveway'),
    -> (NULL,'grasshopper','2001-09-10','front yard');
Query OK, 3 rows affected (0.02 sec)
Records: 3  Duplicates: 0  Warnings: 0
mysql> SELECT * FROM insect ORDER BY id;
+----+-------------+------------+------------+
| id | name        | date       | origin     |
+----+-------------+------------+------------+
|  1 | housefly    | 2001-09-10 | kitchen    |
|  2 | millipede   | 2001-09-10 | driveway   |
|  3 | grasshopper | 2001-09-10 | front yard |
+----+-------------+------------+------------+
3 rows in set (0.00 sec)

Mendapatkan Nilai AUTO_INCREMENT:

LAST_INSERT_ID () adalah fungsi SQL, 
sehingga Anda dapat menggunakannya dari dalam setiap klien yang 
mengerti bagaimana mengeluarkan pernyataan SQL. 
script PERL dan PHH sebaliknya menyediakan fungsi eksklusif 
untuk mengambil nilai otomatis bertambah dari record terakhir.

PERL Contoh:

 Gunakan atribut mysql_insertid untuk mendapatkan nilai 
AUTO_INCREMENT yang dihasilkan oleh query. 
Atribut ini diakses melalui sebuah menangani database atau 
menangani pernyataan, tergantung pada bagaimana Anda masalah query.
 
Contoh berikut referensi itu melalui menangani database:

$dbh->do ("INSERT INTO insect (name,date,origin)
VALUES('moth','2001-09-14','windowsill')");
my $seq = $dbh->{mysql_insertid};

PHP Contoh:

 Setelah mengeluarkan query yang menghasilkan nilai 
AUTO_INCREMENT, mengambil nilai dengan 
memanggil mysql_insert_id ():

mysql_query ("INSERT INTO insect (name,date,origin)
VALUES('moth','2001-09-14','windowsill')", $conn_id);
$seq = mysql_insert_id ($conn_id);

Ulang nomor suatu urutan yang ada:

 Mungkin ada kasus ketika Anda memiliki banyak 
catatan dihapus dari tabel dan Anda ingin resequence semua catatan. 
Hal ini dapat dilakukan dengan menggunakan sebuah trik sederhana 
tetapi Anda harus sangat berhati-hati untuk melakukannya jika tabel 
Anda mengalami bergabung dengan tabel lainnya.

mysql> ALTER TABLE insect DROP id;
mysql> ALTER TABLE insect
    -> ADD id INT UNSIGNED NOT NULL AUTO_INCREMENT FIRST,
    -> ADD PRIMARY KEY (id);

Mulai Sequence pada Nilai khusus:

 Secara default MySQL akan dimulai urutan dari 1 tetapi 
Anda dapat menentukan nomor lain serta pada saat pembuatan tabel. 
Berikut ini adalah contoh di mana MySQL akan dimulai 
urutan dari 100.

mysql> CREATE TABLE insect
    -> (
    -> id INT UNSIGNED NOT NULL AUTO_INCREMENT = 100,
    -> PRIMARY KEY (id),
    -> name VARCHAR(30) NOT NULL, # type of insect
    -> date DATE NOT NULL, # date collected
    -> origin VARCHAR(30) NOT NULL # where collected
);

Leave a Reply

Your email address will not be published. Required fields are marked *