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

Prosedur Tersimpan dengan parameter WHERE opsional

Salah satu cara termudah untuk melakukannya:

SELECT * FROM table 
WHERE ((@status_id is null) or (status_id = @status_id))
and ((@date is null) or ([date] = @date))
and ((@other_parameter is null) or (other_parameter = @other_parameter))

etc.Ini benar-benar menghilangkan sql dinamis dan memungkinkan Anda untuk mencari di satu atau lebih bidang. Dengan menghilangkan sql dinamis, Anda menghapus masalah keamanan lain terkait injeksi sql.



  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 menggunakan DATETIME sebagai DATE di mysql?

  2. Cara Menyalin Tabel di MySQL

  3. pengaturan sql_mode global di mysql

  4. Bagaimana menghubungkan database MySQL jarak jauh di PHP

  5. mysqli_fetch_array() mengharapkan parameter 1 menjadi mysqli_result, boolean diberikan