Создать диаграмму ER из базы данных postgresql [SchemaSpy]

Кто-нибудь использует этот инструмент? Я хотел создать диаграмму ER из моей базы данных. Я запускаю SchemaSpy так:

java -jar schemaSpy_5.0.0.jar -t pgsql -db mydb -host localhost -dp /home/katie/downloads/postgresql-8.0-312.jdbc3.jar -noschema -u postgres -o .

и тогда я получил ошибки:

Using database properties:
  [schemaSpy_5.0.0.

    jar]/net/sourceforge/schemaspy/dbTypes/pgsql.properties
    Gathering schema details..........................................................java.sql.SQLException: ERROR: function information_schema._pg_keypositions() does not exist
        at org.postgresql.core.v3.QueryExecutorImpl.receiveErrorResponse(QueryExecutorImpl.java:1471)
        at org.postgresql.core.v3.QueryExecutorImpl.processResults(QueryExecutorImpl.java:1256)
        at org.postgresql.core.v3.QueryExecutorImpl.execute(QueryExecutorImpl.java:175)
        at org.postgresql.jdbc2.AbstractJdbc2Statement.execute(AbstractJdbc2Statement.java:389)
        at org.postgresql.jdbc2.AbstractJdbc2Statement.executeWithFlags(AbstractJdbc2Statement.java:314)
        at org.postgresql.jdbc2.AbstractJdbc2Statement.executeQuery(AbstractJdbc2Statement.java:221)
        at org.postgresql.jdbc2.AbstractJdbc2DatabaseMetaData.getImportedExportedKeys(AbstractJdbc2DatabaseMetaData.java:3237)
        at org.postgresql.jdbc2.AbstractJdbc2DatabaseMetaData.getImportedKeys(AbstractJdbc2DatabaseMetaData.java:3533)
        at net.sourceforge.schemaspy.model.Table.connectForeignKeys(Table.java:106)
        at net.sourceforge.schemaspy.model.Database.connectTables(Database.java:984)
        at net.sourceforge.schemaspy.model.Database.<init>(Database.java:83)
        at net.sourceforge.schemaspy.SchemaAnalyzer.analyze(SchemaAnalyzer.java:211)
        at net.sourceforge.schemaspy.Main.main(Main.java:42)

Я использую PostgreSQL 9.1 на Xubuntu 12.04.

2 ответа

Решение

Проблемы были решены путем:

  • Использование PgJDBC сверстника для установки базы данных PostgreSQL 9.1 вместо попытки использовать PgJDBC 8.0; а также
  • Использование драйвера JDBC3, так как SchemaSpy, похоже, не нравится драйвер JDBC4.

java -jar F:/schema/schemaSpy_5.0.0.jar -t postgresql -db dhis2ccem1 -host localhost -port 5432 -s public -u postgres -p root -dp F:/schema/postgresql-9.0-801.jdbc4.jar -о выход

Другие вопросы по тегам