Maison > base de données > tutoriel mysql > Comment échapper au caractère deux-points ':' dans les requêtes JPA pour MySQL ?

Comment échapper au caractère deux-points ':' dans les requêtes JPA pour MySQL ?

DDD
Libérer: 2024-11-07 15:27:03
original
313 Les gens l'ont consulté

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

Échapper au caractère deux-points ':' dans les requêtes JPA

Énoncé du problème

Exécuter une requête JPA native avec un MySQL La variable utilisateur contenant ':' déclenche une exception en raison d'une syntaxe non valide : interdiction de suivre ':' avec un espace.

Solution

Pour résoudre ce problème, vous devez échapper aux caractères ':'. Ceci peut être réalisé en les faisant précéder d'un caractère antislash ''.

Voici la requête corrigée :

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 
Copier après la connexion

Implémentation en JPA

Query q = getEntityManager().createNativeQuery(query, SomeClass.class);
return q.getResultList();
Copier après la connexion

Remarque :

La solution fournie suppose une base de données MySQL. Si vous utilisez d'autres bases de données, la syntaxe d'échappement des caractères spéciaux peut varier. Par conséquent, il est essentiel de se référer à la documentation spécifique de la base de données pour connaître les méthodes d'échappement recommandées.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal