Mysql
 sql >> Teknologi Basis Data >  >> RDS >> Mysql

Apakah saya harus menggunakan mysql_real_escape_string jika saya mengikat parameter?

Tidak, Anda tidak perlu menghindari nilai sendiri (yaitu tidak, Anda tidak perlu memanggil mysqli_real_escape_string ) , ketika Anda menggunakan pernyataan yang disiapkan :mesin DB akan melakukannya sendiri.

(Sebenarnya, jika Anda memanggil mysql_real_escape_string dan menggunakan parameter terikat, string Anda akan lolos dua kali -- yang tidak akan bagus :Anda akan berakhir dengan karakter keluar di mana-mana...)


Sebagai catatan tambahan :nilai Anda diteruskan sebagai bilangan bulat (seperti yang ditunjukkan oleh 'ii' ) , jadi Anda tidak perlu memanggil mysql_real_escape_string , bahkan jika Anda tidak menggunakan pernyataan yang disiapkan :seperti yang ditunjukkan oleh namanya, fungsi ini digunakan untuk melarikan diri... string.

Untuk bilangan bulat, saya biasanya hanya menggunakan intval untuk memastikan data yang saya masukkan ke dalam kueri SQL saya benar-benar bilangan bulat.

(Namun, karena Anda menggunakan kueri yang telah disiapkan, sekali lagi, Anda tidak perlu melakukan meloloskan diri seperti itu)



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Tutorial yang bagus tentang cara memperbarui database Mysql Anda dengan formulir PHP?

  2. Bagaimana cara memperbarui jika ada, masukkan jika tidak (AKA upsert atau merge) di MySQL?

  3. Skrip shell Linux untuk cadangan basis data

  4. Cara Mengonfigurasi MySQL menjadi Case Sensitive

  5. Mengakses database MySQL menggunakan c # pada unity?