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

Sql query mengikat variabel vs menentukannya

Meskipun Anda dapat membuat kueri Anda benar-benar aman tanpa mengikat (dengan memformat semua variabel secara manual), menggunakan pernyataan yang disiapkan untuk mewakili data Anda dalam kueri memang satu-satunya cara yang tepat.

Pentingnya menggunakan pernyataan yang sudah disiapkan sering salah dinilai, jadi, saya ingin mengklarifikasi manfaat sebenarnya:

  • pernyataan yang disiapkan membuat pemformatan (atau penanganan) yang tepat tidak dapat dihindari .
  • pernyataan yang disiapkan melakukan pemformatan (atau penanganan) yang tepat di satu-satunya tempat yang tepat - tepat sebelum eksekusi kueri, bukan di tempat lain, jadi, keamanan kami tidak akan bergantung pada sumber yang tidak dapat diandalkan seperti
    • beberapa fitur 'ajaib' PHP yang lebih merusak data daripada membuatnya aman.
    • niat baik dari satu (atau beberapa) programmer, yang dapat memutuskan untuk memformat (atau tidak memformat) variabel kita di suatu tempat dalam aliran program. Itulah poin pentingnya.
  • pernyataan yang disiapkan memengaruhi nilai yang masuk ke kueri, tetapi bukan variabel sumber, yang tetap utuh dan dapat digunakan dalam kode lebih lanjut (untuk dikirim melalui email atau ditampilkan di layar).
  • pernyataan yang disiapkan dapat membuat kode aplikasi lebih pendek secara dramatis, melakukan semua pemformatan di belakang layar (*hanya jika pengemudi mengizinkan).


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Bagaimana cara menggabungkan beberapa baris di MySQL?

  2. Bagaimana saya bisa membangun kembali indeks dan memperbarui statistik di MySQL innoDB?

  3. MySQL - Cara mendapatkan hasil pencarian dengan relevansi yang akurat

  4. SQL Query untuk mendapatkan nilai kolom yang sesuai dengan nilai MAX kolom lain?

  5. Memilih rentang tanggal MySQL dengan date_format