Table des matières
Contenu de la question
Solution
Maison Java La requête obtient une erreur de syntaxe même si la requête est effectivement correcte

La requête obtient une erreur de syntaxe même si la requête est effectivement correcte

Feb 22, 2024 pm 01:16 PM

L'éditeur PHP Youzi vous aidera à résoudre les problèmes courants de programmation Java ! Parfois, même si l'instruction de requête est correcte, il peut y avoir des erreurs de syntaxe, ce qui déroute de nombreux débutants. Cet article abordera ce problème pour aider les lecteurs à comprendre en profondeur les erreurs courantes dans la programmation Java et à résoudre le défi des erreurs grammaticales dans les instructions de requête.

Contenu de la question

Je prévois de déployer mon fichier d'oreille sur glassfish, mais lorsque j'essaie de déployer ear, j'obtiens :

Une erreur de syntaxe s'est produite lorsque

2023-11-23t10:46:59.388+0100|严重:调用类 org.glassfish.persistence.jpa.jpadeployer 准备方法时出现异常 2023-11-23t10:46:59.389+0100|严重:调用类时出现异常org.glassfish.javaee.full.deployment.eardeployer 准备方法 2023-11-23t10:46:59.389+0100|严重:准备应用程序时出现异常 2023-11-23t10:46:59.389+0100|严重:异常 [eclipselink- 8025](eclipse 持久性服务 - 2.3.2.v20111125-r10461):org.eclipse.persistence.exceptions.jpqlexception 异常描述:解析查询

La requête est une requête nommée, je l'ai également testée en utilisant Eclipselink dans un autre projet n'utilisant pas Glassfish (elle n'a pas été déployée sur le serveur d'application) et elle a bien fonctionné

;

Je n'arrive pas à comprendre ce qui pourrait mal se passer, si la requête s'exécute correctement en l'utilisant directement, pourquoi ne fonctionne-t-elle pas lorsqu'elle est déployée sur glassfish ?

Il s'agit d'une requête nommée

@Entity
@Table(name = "T_EXE_PROC")
@TableGenerator(name = "ExecuProcGenerator", table = "T_SEQ", pkColumnName = "SEQ_COL", valueColumnName = "SEQ_CONTATOR", pkColumnValue = "EXE_PRO_SEQUE", allocationSize = 10, initialValue = 0)
@NamedQueries({ 

        @NamedQuery(name = "ExeProc.findLastExecProcs", query = "SELECT DISTINCT (e.procedure) FROM ExeProc e WHERE e.cdExecProcs IN ( SELECT DISTINCT (e.cdExecProcs) FROM ExeProc e, ExeStep s where s.ExecProc.cdExecProcs = e.cdExecProcs AND s.stat.cdStation=:cdStation and s.oper.ceLogin=:ceLogin) and e.statusExecProc = :statusExecProc and e.procedure.status = 1 order by e.lastModifiedStepTime DESC"),

        })
public class ExeProc implements Serializable {
    
    private static final long serialVersionUID = 12348979846545312L;
    
    
    public static final String FIND_LAST_EXEC_PROC = "ExeProc.findLastExecProcs";
Copier après la connexion

J'ai utilisé cette requête dans une application Java (un simple projet Java) et cela fonctionne bien ; La base de données est mssql

Solution

Le problème est lié à la version glassfish, dans cette version

Ça fonctionne bien, et dans celui-ci :

ne fonctionne pas, autrement dit, la version open source ne peut pas effectuer de requêtes très complexes (comme celle de l'exemple

) ;

Je sais qu'il n'y a probablement personne d'autre sur la planète qui a les problèmes que je rencontre et que la technologie est très ancienne ; mais je ne comprends pas pourquoi quelqu'un m'a pris mes deux cents ! !

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!

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

Outils d'IA chauds

Undresser.AI Undress

Undresser.AI Undress

Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover

AI Clothes Remover

Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool

Undress AI Tool

Images de déshabillage gratuites

Clothoff.io

Clothoff.io

Dissolvant de vêtements AI

Video Face Swap

Video Face Swap

Échangez les visages dans n'importe quelle vidéo sans effort grâce à notre outil d'échange de visage AI entièrement gratuit !

Outils chauds

Bloc-notes++7.3.1

Bloc-notes++7.3.1

Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise

SublimeText3 version chinoise

Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1

Envoyer Studio 13.0.1

Puissant environnement de développement intégré PHP

Dreamweaver CS6

Dreamweaver CS6

Outils de développement Web visuel

SublimeText3 version Mac

SublimeText3 version Mac

Logiciel d'édition de code au niveau de Dieu (SublimeText3)