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

Bagaimana cara mengubah parameter terikat tanda tanya gaya MySQL `?` menjadi parameter terikat `$1` gaya Postgres

TIDAK. Dan tidak ada korespondensi langsung antara ? dan $1 sintaks, karena yang terakhir menyiratkan penggunaan kembali parameter, sedangkan ? tidak mengizinkannya. Misalnya, menggunakan ? ? ? menyiratkan bahwa Anda memiliki 3 parameter pemformatan, sedangkan $1 $2 $2 menyiratkan bahwa Anda memiliki dua parameter pemformatan.

Tidak mungkin, karena tidak ada korespondensi langsung, konversi hanya dimungkinkan satu arah, yang akan membuat utilitas seperti itu tidak berguna. Anda dapat mengganti semuanya sendiri, dengan satu ekspresi reguler, menggantikan setiap ? dengan $ + index + 1 .

Anda tidak punya banyak pilihan dalam hal ini. Ini harus diselesaikan. Selain itu, $1 jauh lebih fleksibel daripada ? , karena penggunaan kembali parameter, ditambah ekstensi opsional. Misalnya, hal-janji memperluasnya dengan sangat baik, dengan berbagai pengubah format yang sering dibutuhkan:^ , ~ , :json , :csv , dll...

Anda mungkin akan menghabiskan lebih sedikit waktu untuk mengonversi SQL Anda dengan tangan, daripada waktu untuk menulis utilitas untuk konversi satu arah yang tepat.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. bandingkan dua nilai yang dipisahkan koma di mysql

  2. di Php bagaimana cara menghapus kode emoji?

  3. Keamanan Basis Data 101:Keamanan dalam Basis Data Sumber Terbuka

  4. MySQL tidak dapat dimulai

  5. Dapatkan semua catatan dari database MySQL yang ada di dalam Google Maps .getBounds?