Использование SchemaSpy для визуализации базы данных SQLite (windows) - PullRequest
5 голосов
/ 15 апреля 2011

Я пытаюсь создать дамп sqlite с помощью SchemaSpy. Я установил и запустил SchemaSpy и смог правильно выгрузить базу данных MySQL.

Теперь у меня есть файл .sqlite (из приложения для iOS) и драйвер sqlite от Кристиана Вернера (http://www.ch -werner.de / javasqlite / Overview-summary.html ). Пример более здесь объясняет, как с этим работать, но, честно говоря, я не понимаю, что делать.

Есть ли кто-нибудь, кто знает, как я могу использовать SchemaSpy в Windows? Хотя мне не обязательно использовать инструмент с графическим интерфейсом.

Ответы [ 5 ]

2 голосов
/ 12 июля 2011

Я тоже столкнулся с этой проблемой, но в конце концов заставил ее работать. Вам нужна DLL для библиотеки SQLite.

Вы можете скачать его здесь , а затем поместить его в папку system32 вашей установки Windows (например, C: \ Windows \ System32)

Наконец, не забудьте указать точный путь к драйверу JDBC:

java -jar… -dp "D:\SchemaSpy\driver\j2sdk1.4.2_03\jre\lib\ext\sqlite.jar" …
0 голосов
/ 09 января 2013

Я понимаю, что это старый вопрос, но для записи можно заставить SchemaSpy использовать драйвер Xerial SQLite JDBC без особых трудностей, выполнив для него новый файл .properties, следуя инструкциям на * 1001.*http://schemaspy.sourceforge.net/dbtypes.html

Все, что вам действительно нужно сделать, это скопировать существующий sqlite.properties, переименовав его в что-то вроде sqlite-xerial.properties и изменить соответствующие строки;например:

driver=org.sqlite.JDBC

description=SQLite-Xerial

driverPath=sqlite-jdbc-3.7.2.jar

Драйвер Xerial не нуждается в файле JNI DLL и также имеетПреимущество правильного выбора любых настроенных отношений FK - по крайней мере, с базой данных SQLite 3, с которой я тестировал.

Он выдает некоторые предупреждения при обращении к именам таблиц или столбцов, которые также являются ключевыми словами, но этовозможно, ошибка SchemaSpy в том, что они не обернуты в [].Или ошибки разработчиков схемы при использовании ключевых слов в качестве имен таблиц и столбцов:)

0 голосов
/ 20 апреля 2011

Обычно лучше всего взять последнюю бета-версию SchemaSpy . Вызов должен быть похож на запуск с MySQL, за исключением того, что вы указываете тип вашей базы данных с помощью -t sqlite и указываете «базу данных» на ваш файл .sqlite.

Драйверы SQLite используют JNI для своей реализации, поэтому вам необходимо убедиться, что sqlite_jni.dll находится в вашей переменной PATH. Чтобы временно добавить его в PATH в командной строке Windows:

set PATH =% PATH%; directoryContainedTheJniDll

0 голосов
/ 11 мая 2011

Я являюсь автором одной из упомянутых вами статей.

Вам необходимо скомпилировать драйвер JDBC schemaspy.Он был написан для UNIX, но кто-то прислал автору заметки о его создании в среде Windows .Но есть набор файлов для готовых окон с нужными вам sqlite.jar и .dll.Как только вы получите это в classpath, это просто.

Если это слишком много для вас, вы всегда можете запустить CLI sqlite3 и использовать команду .schema, чтобы вывести таблицы и установить ихв базе данных, вы знаете, как подключиться.Или настроить и Ubuntu VM;)

0 голосов
/ 19 апреля 2011

Интересно, зачем вам нужен драйвер sqlite?Просто сообщите SchemaSpy, что ваш тип БД - sqlite, и с вами все будет в порядке.Что-то вроде

java -jar schemaSpy.jar -t sqlite -db-о

...