2016-06-15 4 views
0

Je suis en train de coder cette requête en utilisant hibernate. Mais ça ne fonctionne pas. Semble que l'alias c est inconnu. Quelqu'un sait quel est le problème?La requête native sur hibernate ne fonctionne pas (jeton inattendu)

static final String BEGIN_QUERY = "SELECT c.contratoId, c.contrato, c.classificacao, c.responsavel, c.uf, c.sigla," 
     + "c.statusContrato, c.fornecedor, c.site, c.login, c.senha, c.telefone, c.cnpj, c.codigoFornecedor, c.hidrometro" 
     + "c.nome, c.endereco, c.despesa, c.descricao, c.mp, c.status, c.estadoLancamento" 
     + "h.historicoId, h.dataCobranca, h.dataVencimento, h.dataEmissao, h.dataLancamento, h.dataCompensacao, h.dataAtualizacao, h.docPgt, h.docCompensacao" 
     + "FROM Contrato c, Historico h" 
     + "WHERE c.contratoId = h.contratoId" 
     + "AND 1=1"; 

L'EXCEPTION:

Caused by: org.hsqldb.HsqlException: unexpected token: C 
at org.hsqldb.error.Error.parseError(Unknown Source) 
at org.hsqldb.ParserBase.unexpectedToken(Unknown Source) 
at org.hsqldb.ParserDQL.XreadSelect(Unknown Source) 
at org.hsqldb.ParserDQL.XreadQuerySpecification(Unknown Source) 
at org.hsqldb.ParserDQL.XreadSimpleTable(Unknown Source) 
at org.hsqldb.ParserDQL.XreadQueryPrimary(Unknown Source) 
at org.hsqldb.ParserDQL.XreadQueryTerm(Unknown Source) 
at org.hsqldb.ParserDQL.XreadQueryExpressionBody(Unknown Source) 
at org.hsqldb.ParserDQL.XreadQueryExpression(Unknown Source) 
at org.hsqldb.ParserDQL.compileCursorSpecification(Unknown Source) 
at org.hsqldb.ParserCommand.compilePart(Unknown Source) 
at org.hsqldb.ParserCommand.compileStatement(Unknown Source) 
at org.hsqldb.Session.compileStatement(Unknown Source) 
at org.hsqldb.StatementManager.compile(Unknown Source) 
at org.hsqldb.Session.execute(Unknown Source) 
... 19 more 
+3

Il vous manque quelques caractères d'espace, la fin de votre requête ressemble: 'h.docCompensacaoFROM Contrato c, Historico hWHERE c.contratoId = h.contratoIdAND 1 = 1' – Berger

Répondre

1

Vous avez manqué plusieurs espaces et virgules

static final String BEGIN_QUERY = "SELECT c.contratoId, c.contrato, c.classificacao, c.responsavel, c.uf, c.sigla, " 
     + "c.statusContrato, c.fornecedor, c.site, c.login, c.senha, c.telefone, c.cnpj, c.codigoFornecedor, c.hidrometro, " // here 
     + "c.nome, c.endereco, c.despesa, c.descricao, c.mp, c.status, c.estadoLancamento, " // here 
     + "h.historicoId, h.dataCobranca, h.dataVencimento, h.dataEmissao, h.dataLancamento, h.dataCompensacao, h.dataAtualizacao, h.docPgt, h.docCompensacao " // here 
     + "FROM Contrato c, Historico h " // here 
     + "WHERE c.contratoId = h.contratoId " // and here 
     + "AND 1=1";