org - Error de PostgreSQL: la columna am.amcanorder no existe
postgresql 10.4 maven (4)
Tuve el mismo problema con SpringBoot y lo resolví actualizando mi controlador
Para Spring Boot 1.4.0 acabo de agregar la siguiente Dependencia
<dependency> <groupId>org.postgresql</groupId> <artifactId>postgresql</artifactId> </dependency>
Estoy trabajando en el servidor basado en la versión 6.8 (final) de CentOS sin acceso sudo. Recopilé PostgreSQL v9.6 beta 2.
Cuando estoy cargando datos usando ant, obtengo el error am.amcanorder column no existe, que no sé cómo solucionarlo.
Estoy siguiendo un tutorial para configurar el sistema de almacenamiento de datos Intermine y estoy en este paso .
ant -Dsource=uniprot-malaria -v
Esto tardará un par de minutos en completarse, el comando ejecuta los siguientes pasos:
- Comprueba que existe una fuente con el nombre uniprot-malaria en project.xml
- Lee los archivos XML de UniProt en la ubicación especificada por src.data.dir
- Llama al analizador incluido en la fuente de uniprot con la lista de archivos, esto lee el XML original y crea elementos que son representaciones de metadatos de los objetos que se cargarán en la base de datos de malariamine.
- Estos elementos se almacenan en una base de datos de elementos intermedios. Lee de la base de datos de elementos, convierte elementos en objetos y los carga en la base de datos de malariamine .
La parte en negrita es lo que (en mi opinión) causa el error. El error relevante verbose es:
org.postgresql.util.PSQLException: ERROR: column am.amcanorder does not exist
Position: 407
at org.postgresql.core.v3.QueryExecutorImpl.receiveErrorResponse(QueryExecutorImpl.java:2161)
at org.postgresql.core.v3.QueryExecutorImpl.processResults(QueryExecutorImpl.java:1890)
at org.postgresql.core.v3.QueryExecutorImpl.execute(QueryExecutorImpl.java:255)
at org.postgresql.jdbc2.AbstractJdbc2Statement.execute(AbstractJdbc2Statement.java:559)
at org.postgresql.jdbc2.AbstractJdbc2Statement.executeWithFlags(AbstractJdbc2Statement.java:403)
at org.postgresql.jdbc2.AbstractJdbc2Statement.executeQuery(AbstractJdbc2Statement.java:283)
at org.postgresql.jdbc2.AbstractJdbc2DatabaseMetaData.getIndexInfo(AbstractJdbc2DatabaseMetaData.java:4234)
at org.intermine.task.CreateIndexesTask.execute(CreateIndexesTask.java:212)
at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:288)
Bueno, el problema se solucionó al compilar v9.5.3, la última versión estable en este momento. Anteriormente, estaba usando v9.6beta2 ... que tiene un error informado al trabajar con JDBC y v9.6beta2.
Player87 tiene razón, funciona simplemente al reemplazar la versión más nueva 9.6 * con 9.5. * Del servidor PostgresSQL .
Pero, hay otra solución. Para un proyecto Java, también intenté dejar el servidor PostgresSQL en 9.6. * Y actualicé el controlador PostgresSQL, desde la versión 9.4-1203 hasta la más reciente, 9.4-1211. En un archivo maven pom.xml:
<postgresql.version>9.4.1211</postgresql.version>
Eso funcionó para mí también.
Para mí (conectarme a PostgreSQL desde una aplicación Java / Maven y enfrentar el mismo error) fue un problema con el controlador.
Se resolvió la actualización del controlador de PostgreSQL de 9.4-1201-jdbc41 a 42.1.4. Mi dependencia de Maven ahora se ve así:
<dependency>
<groupId>org.postgresql</groupId>
<artifactId>postgresql</artifactId>
<version>42.1.4</version>
</dependency>