Insert Single Quote ke Database Microsoft Access
June 26, 2008 by maseko
Selama ini, saya sangat jarang menggunakan Microsoft Access. Kemarin, karena alasan tertentu saya harus memindahkan database yang digunakan oleh script PHP yang sebelumnya menggunakan MySQL ke MS Access. Karena menggunakan Adodb sebagai Database Abstraction Library hanya beberapa baris script yang perlu disesuaikan, dan script yang tugasnya membaca ribuan baris data dari halaman HTML tersebut dapat berjalan kembali dan data-data yang diambil masuk sebagai record pada tabel di MS Access. Setelah beberapa kali menarik data, saya baru mengambil sample, dan ternyata ditemukan baris-baris yang tidak masuk dengan melihat jumlah record yang berhasil masuk dalam database.
Kesalahan saya yang pertama adalah tidak adanya error handling yang mungkin timbul, jadi pada prosesnya tidak ditampilkan baris-baris mana yang tidak berhasil masuk. Setelah dibuat, diketahui jika baris-baris yang tidak masuk adalah baris yang pada salah satu field-nya mengandung single quote (‘). Saya lihat kembali pada script yang memang hanya digunakan oleh saya sendiri ini. Sudah ada antisipasi hal tersebut tetapi itu ditujukan ketika akan meng-insert data ke MySQL.
$nama = addslashes(trim($val[3]));
Setelah mencari tahu lewat Google, baru mengetahui untuk memasukkan ke MS Access, tambahkan satu single quote lagi didepan single quote yang merupakan bagian isi field. jadi tinggal mengubah satu baris tersebut.
$nama = trim($val[3]);
$nama = str_replace("'","''",$nama);
Beberapa hari ke depan, sepertinya saya harus mulai belajar MS Access sebagai database. Untungnya ada internet.

Posted in 







o, gitu to cara access meng-escape special characters.
nice post :)
selain single quote, karakter2 apa lagi yg dianggap “special” sama access?