Bagaimana untuk Melarikan Watak Kolon ':' dalam Pertanyaan JPA untuk MySQL?

DDD
Lepaskan: 2024-11-07 15:27:03
asal
272 orang telah melayarinya

How to Escape the Colon Character ':' in JPA Queries for MySQL?

Meloloskan Diri dari Aksara Colon ':' dalam Pertanyaan JPA

Pernyataan Masalah

Menjalankan pertanyaan JPA asli dengan MySQL pembolehubah pengguna yang mengandungi ':' menimbulkan pengecualian kerana Sintaks yang tidak sah: tidak dibenarkan mengikuti ':' dengan ruang.

Penyelesaian

Untuk menangani isu ini, anda perlu melarikan diri daripada aksara ':'. Ini boleh dicapai dengan mendahuluinya dengan aksara sengkang ke belakang ''.

Berikut ialah pertanyaan yang diperbetulkan:

SELECT foo, bar, baz, 
    @rownum:= if (@id = foo, @rownum+1, 1) as rownum, 
    @id    := foo                         as rep_id 
FROM 
    foo_table 
ORDER BY 
    foo, 
    bar desc 
Salin selepas log masuk

Pelaksanaan dalam JPA

Query q = getEntityManager().createNativeQuery(query, SomeClass.class);
return q.getResultList();
Salin selepas log masuk

Nota:

Penyelesaian yang disediakan menganggap pangkalan data MySQL. Jika menggunakan pangkalan data lain, sintaks untuk melarikan diri aksara khas mungkin berbeza-beza. Oleh itu, adalah penting untuk merujuk kepada dokumentasi pangkalan data khusus untuk kaedah melarikan diri yang disyorkan.

Atas ialah kandungan terperinci Bagaimana untuk Melarikan Watak Kolon ':' dalam Pertanyaan JPA untuk MySQL?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan