SQL Mode yang disetting ke STRICT_ALL_TABLES akan membuat pengisian data lebih akurat. Namun di sisi lain akan membuat lebih banyak error. Untuk aplikasi akan lebih mementingkan keakuratan data, untuk website company profile akan lebih mementingkan tampilan yang tidak banyak gangguan.
Tabel coba
Misal kita mempunya tabel coba dengan field seperti gambar berikut
Insert dengan SQL mode normal
Misal kita melakukan 2 buah insert:
insert into coba
set coba_name=’123456789′, keterangan=’123456789′ ;
insert into coba
set coba_harga=123456789, keterangan=’123456789′;
Maka hasilnya:
Tampak bahwa nilai yang masuk ke coba_name dan coba_harga terpotong tanpa ada pemberitahuan. Hal ini tentu berbahaya jika banyak transaksi keuangan dalam aplikasi kita.
SQL Mode yang disetting ke STRICT_ALL_TABLES
Pada setting di my.cnf kita tambahkan
[mysqld]
…
sql-mode = STRICT_ALL_TABLES
Jika kita melakukan insert:
insert into coba
set coba_name=’123456789′, keterangan=’123456789′ ;
Maka akan muncul error:
#1406 – Data too long for column ‘coba_name’ at row 1
Jika kita melakukan insert:
insert into coba
set coba_harga=123456789, keterangan=’123456789′;
Maka akan muncul error:
#1264 – Out of range value for column ‘coba_harga’ at row 1
Kemudian kalau kita lihat datanya:
Dengan demikian maka data yang error tidak masuk ke tabel dan akan menghindarkan aplikasi kita dari banyak kesalahan.
Data salah yang masuk ke aplikasi kita akan mengakibatkan kesalahan pada data yang lain. Kita perlu mencegah masuknya data yang salah. Oleh karena itu kita perlu mengenablekan SQL Mode STRICT_ALL_TABLES .
Informasi lebih lanjut silahkan mengunjungi:
1. http://dev.mysql.com/doc/refman/5.0/en/sql-mode.html
2. http://dev.mysql.com/doc/refman/5.0/en/server-system-variables.html#sysvar_sql_mode
Artikel terkait:
1. http://www.proweb.co.id/articles/web_application/instal_xampp_centos_6.html
2. http://www.proweb.co.id/articles/web_application/standarisasi_amp.html
3. http://www.proweb.co.id/articles/web_application/standar_field_table.html
4. http://www.proweb.co.id/articles/support/decimal_mysql.html
5. http://www.proweb.co.id/articles/support/strict_mode_mysql.html
Kunjungi www.proweb.co.id untuk menambah wawasan anda.