schemacrawler / SchemaCrawler

Free database schema discovery and comprehension tool
http://www.schemacrawler.com/
Other
1.6k stars 199 forks source link

Relations not detected due to case inconsistencies in DDL #195

Closed acurrysauce closed 6 years ago

acurrysauce commented 6 years ago

Environment

14.21.01/windows 7/sqlite

Specify the

  • version of SchemaCrawler that you are using
  • version of Java that you are using
  • operating system and version that you are using
  • relational datavase and version that you are using
  • JDBC driver and version that you are using

Issue

Lets say a field name is FOOBAR in the table, but in the foreign key component of the ddl we call it fooBar - then schemacrawler will not detect or include this relationship in the erd output. I believe the same goes for primary keys. Note that sqlite will not care about the case insensitivity - and so the foreign key and primary key constraints will function perfectly as expected, however they will not be in the schemacrawler output.

Please explain the issue briefly

  • Provide the steps that you took to reproduce the issue
  • Provide any steps that you took to solve the issue
  • Zip and attach the SchemaCrawler debug logs, which can be obtained by running SchemaCrawler with an additional -loglevel=ALL on the command-line argument
sualeh commented 6 years ago

@acurrysauce thanks for reporting this issue. SchemaCrawler relies on the underlying database driver to provide information about foriegn keys. If the SQLite JDBC driver does not return foreign key information, SchemaCrawler cannot display it. Please file a bug with the sqlite-jdbc project.