java - 我如何解决 PostgreSQL JDBC org.postgresql.util.PSQLException 错误 :

标签 java sql postgresql jdbc

我遇到了 PostgreSQL JDBC 的问题

如果我使用 pgAdmin 执行查询,我使用 postgresql-9 和 Glassfish 我没有任何错误,但在我的应用程序中我有这个错误:

SEVERE: org.postgresql.util.PSQLException: ERREUR: erreur de syntaxe sur ou près de « d »
Position : 293
at org.postgresql.core.v3.QueryExecutorImpl.receiveErrorResponse(QueryExecutorImpl.java:2103)
at org.postgresql.core.v3.QueryExecutorImpl.processResults(QueryExecutorImpl.java:1836)
at org.postgresql.core.v3.QueryExecutorImpl.execute(QueryExecutorImpl.java:257)
at org.postgresql.jdbc2.AbstractJdbc2Statement.execute(AbstractJdbc2Statement.java:512)
at org.postgresql.jdbc2.AbstractJdbc2Statement.executeWithFlags(AbstractJdbc2Statement.java:388)
at org.postgresql.jdbc2.AbstractJdbc2Statement.executeQuery(AbstractJdbc2Statement.java:273)

这是我的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();

最佳答案

您在 del.libelledelegationarFROM 之间缺少一个空格。这导致查询被解析为:

SELECT ...., del.libelledelegationarFROM dossier d ....

换句话说,它看到一个列 del.libelledelegationarFROM 带有别名 dossier 并且当解析器然后看到 d 它跳闸,因为它要么需要 FROM,因此它返回一个错误,指出 d 附近存在语法错误。

关于java - 我如何解决 PostgreSQL JDBC org.postgresql.util.PSQLException 错误 :,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18355771/

相关文章:

java - 插入 3D 数组列表

java - 向客户端发送文件时出现棘手的 NullPointerException

mysql - 将数据规范化到一张表中

sql - 在另一个子查询中使用子查询中的字段值,其中 PostgreSQL 中的generate_series

postgresql - Heroku Postgres 上的高平均负载

java - 重定向 System.out 并附加到现有文件

java - 如何更改 mousePress() 上单行的颜色

sql - 可以在没有子查询的情况下进行此查询吗?

mysql - 获取我的 MySQL 数据库表中未列出的第一个可用数字

java - 在 JOOQ/PostgreSQL 中使用自定义类型更新字段