我有 PostgreSQL JDBC 的问题
如果我使用 pgAdmin 执行查询,我使用 postgresql-9 和 Glassfish 我没有任何错误,但在我的应用程序中我有这个错误:
严重:org.postgresql.util.PSQLException:ERREUR:erreur de syntaxe sur ou près de « d »
位置:293
at org.postgresql.core.v3.QueryExecutorImpl.receiveErrorResponse(QueryExecutorImpl.java:2103)
at org.postgresql.core .v3.QueryExecutorImpl.processResults(QueryExecutorImpl.java:1836)
在 org.postgresql.core.v3.QueryExecutorImpl.execute(QueryExecutorImpl.java:257)
在 org.postgresql.jdbc2.AbstractJdbc2Statement.execute(AbstractJdbc2Statement.java:512)
在org.postgresql.jdbc2.AbstractJdbc2Statement.executeQuery(AbstractJdbc2Statement.java:273)
上的 org.postgresql.jdbc2.AbstractJdbc2Statement.executeWithFlags(AbstractJdbc2Statement.java:388)
这是我的java代码
PreparedStatement st = con.prepareStatement("SELECT d.refdossier, d.status, d.date_validation, d.date_last_update,"
+ "d.id_dossier,d.contrat_signe, d.etat_avancement,c.nom_pre_cont, c.num_piece_id, c.date_piece_id,"
+ "c.lieu_piece_id, c.dat_nai_con, c.tel_con, fax_con, c.email_con,g.libellegouvernoratar ,del.libelledelegationar"
+ "FROM dossier d JOIN contact c on c.id_contact=d.id_dossier JOIN gouvernorat "
+ " g on g.codegouvernorat=c.gouv JOIN delegation del on del.codedelegation=c.delegation"
+ " WHERE d.id_dossier="+84);
res = st.executeQuery();