gvSIG bugs #4538

Falla al exportar la tabla "country" de PostgreSQL a SpatiaLite.

Added by Joaquín del Cerro Murciano almost 7 years ago. Updated over 6 years ago.

Status:Closed% Done:

0%

Priority:NormalSpent time:-
Assignee:Joaquín del Cerro Murciano
Category:-
Target version:2.4.0-2830 (rev. org.gvsig.desktop-2.0.196)
Severity:Minor Add-on version:
gvSIG version:2.4.0 Add-on build:
gvSIG build:2827 Add-on resolve version:
Operative System:Linux Add-on resolve build:
Keywords: Proyecto:
Has patch: Hito:
Add-on name:Unknown

Description

  • Creo una vista en 4326
  • Cargo el shape country
  • La exporto a PostgreSQL
  • Cargo la capa country de PostgreSQL.
  • La selecciono y exporto a SpatialLite.

Falla.
En la consola aparece:

 WARN 716648 [Thread-23] (DefaultJExporttoServicePanel.java:286) - Problems exporting the data (layer="public"."country").
org.gvsig.exportto.ExporttoServiceException: An error has been produced exporting a store
        at org.gvsig.exportto.swing.prov.jdbc.ExporrtoJDBCService.export(ExporrtoJDBCService.java:343)
        at org.gvsig.exportto.swing.impl.DefaultJExporttoServicePanel$Export.run(DefaultJExporttoServicePanel.java:284)
Caused by: java.lang.RuntimeException: Can't perform operation 'CreateTableOperation'.
        at org.gvsig.fmap.dal.store.jdbc2.spi.operations.AbstractConnectionOperation.perform_operation(AbstractConnectionOperation.java:77)
        at org.gvsig.fmap.dal.store.jdbc2.spi.operations.AbstractConnectionOperation.perform(AbstractConnectionOperation.java:41)
        at org.gvsig.fmap.dal.store.jdbc2.spi.JDBCServerExplorerBase.add(JDBCServerExplorerBase.java:354)
        at org.gvsig.exportto.swing.prov.jdbc.ExporrtoJDBCService.createTable(ExporrtoJDBCService.java:149)
        at org.gvsig.exportto.swing.prov.jdbc.ExporrtoJDBCService.export(ExporrtoJDBCService.java:197)
        ... 1 more
Caused by: org.gvsig.fmap.dal.store.jdbc.exception.JDBCSQLException: An JDBC driver exception was throw
        at org.gvsig.fmap.dal.store.jdbc2.spi.operations.CreateTableOperation.performCreateTable(CreateTableOperation.java:109)
        at org.gvsig.fmap.dal.store.jdbc2.spi.operations.CreateTableOperation.perform(CreateTableOperation.java:53)
        at org.gvsig.fmap.dal.store.jdbc2.spi.operations.AbstractConnectionOperation.perform_operation(AbstractConnectionOperation.java:70)
        ... 5 more
Caused by: java.sql.SQLException: [SQLITE_ERROR] SQL error or missing database (unknown database "public")
        at org.spatialite.core.DB.newSQLException(DB.java:892)
        at org.spatialite.core.DB.newSQLException(DB.java:903)
        at org.spatialite.core.DB.throwex(DB.java:870)
        at org.spatialite.core.NativeDB.prepare(Native Method)
        at org.spatialite.core.DB.prepare(DB.java:213)
        at org.spatialite.jdbc3.JDBC3Statement.execute(JDBC3Statement.java:60)
        at org.gvsig.fmap.dal.store.jdbc2.JDBCUtils.execute(JDBCUtils.java:33)
        at org.gvsig.fmap.dal.store.jdbc2.spi.operations.CreateTableOperation.performCreateTable(CreateTableOperation.java:106)
        ... 7 more


Repitiendo el proceso he obserbado que en el paso Nombre de tabla me ofrece el nombre "public"."country" cuando deberia ser country.
Corrigiendolo el nombre de tabla y continuando falla mostrando el siguiente error en la consola:

WARN 988087 [Thread-27] (DefaultJExporttoServicePanel.java:286) - Problems exporting the data (layer="public"."country").
org.gvsig.exportto.ExporttoServiceException: An error has been produced exporting a store
        at org.gvsig.exportto.swing.prov.jdbc.ExporrtoJDBCService.export(ExporrtoJDBCService.java:343)
        at org.gvsig.exportto.swing.impl.DefaultJExporttoServicePanel$Export.run(DefaultJExporttoServicePanel.java:284)
Caused by: java.lang.RuntimeException: Can't perform operation 'CreateTableOperation'.
        at org.gvsig.fmap.dal.store.jdbc2.spi.operations.AbstractConnectionOperation.perform_operation(AbstractConnectionOperation.java:77)
        at org.gvsig.fmap.dal.store.jdbc2.spi.operations.AbstractConnectionOperation.perform(AbstractConnectionOperation.java:41)
        at org.gvsig.fmap.dal.store.jdbc2.spi.JDBCServerExplorerBase.add(JDBCServerExplorerBase.java:354)
        at org.gvsig.exportto.swing.prov.jdbc.ExporrtoJDBCService.createTable(ExporrtoJDBCService.java:149)
        at org.gvsig.exportto.swing.prov.jdbc.ExporrtoJDBCService.export(ExporrtoJDBCService.java:197)
        ... 1 more
Caused by: org.gvsig.fmap.dal.store.jdbc.exception.JDBCSQLException: An JDBC driver exception was throw
        at org.gvsig.fmap.dal.store.jdbc2.spi.operations.CreateTableOperation.performCreateTable(CreateTableOperation.java:109)
        at org.gvsig.fmap.dal.store.jdbc2.spi.operations.CreateTableOperation.perform(CreateTableOperation.java:53)
        at org.gvsig.fmap.dal.store.jdbc2.spi.operations.AbstractConnectionOperation.perform_operation(AbstractConnectionOperation.java:70)
        ... 5 more
Caused by: java.sql.SQLException: [SQLITE_ERROR] SQL error or missing database (table "country" has more than one primary key)
        at org.spatialite.core.DB.newSQLException(DB.java:892)
        at org.spatialite.core.DB.newSQLException(DB.java:903)
        at org.spatialite.core.DB.throwex(DB.java:870)
        at org.spatialite.core.NativeDB.prepare(Native Method)
        at org.spatialite.core.DB.prepare(DB.java:213)
        at org.spatialite.jdbc3.JDBC3Statement.execute(JDBC3Statement.java:60)
        at org.gvsig.fmap.dal.store.jdbc2.JDBCUtils.execute(JDBCUtils.java:33)
        at org.gvsig.fmap.dal.store.jdbc2.spi.operations.CreateTableOperation.performCreateTable(CreateTableOperation.java:106)
        ... 7 more

Associated revisions

Revision 43397
Added by Joaquín del Cerro Murciano almost 7 years ago

refs #4538, corregido el metodo getName del store de jdbc y comprobado en SelectPkPanel que no marque por defecto crear clave primaria si la capa de origen ya tiene una clave primaria.

History

#1 Updated by Joaquín del Cerro Murciano almost 7 years ago

  • Target version changed from 2.4.0-2850-final (rev. org.gvsig.desktop-2.0.220) to 2.4.0-2830 (rev. org.gvsig.desktop-2.0.196)
  • Assignee set to Joaquín del Cerro Murciano
  • Status changed from New to Fixed

#2 Updated by Álvaro Anguix over 6 years ago

  • Status changed from Fixed to Closed

Also available in: Atom PDF