Pengikatan Parameter PDO untuk Jenis Data Perpuluhan
Apabila bekerja dengan jenis data perpuluhan dalam pangkalan data, anda mungkin menghadapi masalah semasa mengemas kini nilainya menggunakan pengikatan parameter PDO. Artikel ini menerangkan ketersediaan PDO::PARAM untuk data perpuluhan dan menyediakan penyelesaian untuk mengikat dan mengemas kini nilai perpuluhan.
Pengikatan Parameter PDO
PDO (Objek Data PHP) menawarkan mekanisme pengikatan parameter yang mudah yang membolehkan anda menghantar nilai kepada pertanyaan SQL dengan selamat dan cekap. Untuk jenis data yang berbeza, PDO menyediakan pelbagai pemalar pengikatan parameter seperti PDO::PARAM_INT, PDO::PARAM_STR dan lain-lain.
Mengenai data perpuluhan, tiada jenis PDO::PARAM khusus untuknya. Anda mungkin secara naluri menganggap bahawa PDO::PARAM_INT sepatutnya berfungsi untuk nilai integer dengan perpuluhan, tetapi ini tidak berlaku.
Penyelesaian untuk Mengikat Nilai Perpuluhan
Penyelesaian untuk mengikat nilai perpuluhan dalam PDO adalah menggunakan PDO::PARAM_STR. Pemalar pengikat ini menjangkakan nilai akan dibuang sebagai rentetan, yang sesuai untuk perpuluhan/terapung kerana ia disimpan secara dalaman sebagai rentetan dalam pangkalan data.
Contoh Nilai Perpuluhan Mengikat:
$update_decval->bindParam(':decval', $decval, PDO::PARAM_STR);
Dengan pengubahsuaian ini, PDO akan menganggap $decval sebagai rentetan dan mengemas kini medan perpuluhan dengan betul.
Mengapa PDO::PARAM_STR untuk Perpuluhan?
Walaupun perpuluhan pada asasnya ialah nombor, ia disimpan sebagai rentetan secara dalaman dalam pangkalan data atas dua sebab:
Atas ialah kandungan terperinci Bagaimana untuk Mengikat Nilai Perpuluhan dengan Pengikatan Parameter PDO?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!