Dari pengalaman saya, saya akan memberi tahu Anda. Ada dua skenario
1) Anda ingin menentukan parameter dalam kueri yang nilainya disetel secara dinamis.
eg: where user_id = :userId
Di sini Anda tidak akan mendapatkan masalah jika Anda mengatur parameter dengan nama yang sama dengan "userId";
2) Anda mengetik nilai
eg: select count(id) :: integer
ketika Anda melakukan ini, Anda harus menggunakan karakter pelarian jika tidak, hibernasi akan berpikir bahwa itu adalah parameter. Dan itu akan memberikan kesalahan "Semua parameter tidak disetel " Anda bisa mengatasinya dengan menulis kode menggunakan karakter escape
eg:select count(id) \\:\\: integer
Jadi ini akan menyelesaikan masalah Anda. Dan jika Anda salah menggunakan garis miring ke depan alih-alih garis miring ke belakang, Anda akan mendapatkan kesalahan "spasi tidak diizinkan setelah awalan"
Wrong: select count(id)//://: integer
Right: select count(id)\\:\\: integer
Tapi saya sangat menyarankan Anda untuk menggunakan fungsi CAST daripada menggunakan "::"
operator ini select CAST(count(id) as integer)
Ini adalah cara mengetik yang lebih baik dan akan menyebabkan kesalahan minimal