使用SchemaSpy可视化SQLite数据库(窗口)

|| 我正在尝试使用SchemaSpy进行sqlite转储。 我启动并运行了SchemaSpy,并且能够正确地转储MySQL数据库。 现在,我有一个.sqlite文件(来自iOS应用程序)和Christian Werner的sqlite驱动程序(http://www.ch-werner.de/javasqlite/overview-summary.html)。这里的一个例子说明了如何使用它,但老实说-我不知道该怎么办。 是否有人知道如何在Windows上使用SchemaSpy?但是,对于我来说,没有必要使用GUI工具。     
已邀请:
我也遇到了这个问题,但最终使其解决了。您需要用于SQLite库的DLL。 您可以在此处下载它,然后将其放在Windows安装的system32文件夹中(例如C:\\ Windows \\ System32) 最后,不要忘记指定确切的JDBC驱动程序路径:
java -jar… -dp \"D:\\SchemaSpy\\driver\\j2sdk1.4.2_03\\jre\\lib\\ext\\sqlite.jar\" …
    
我确实想知道为什么您需要获得sqlite驱动程序。只需告诉SchemaSpy您的数据库类型为sqlite,您就可以了。就像是 java -jar schemaSpy.jar -t sqlite -db <您的文件> -o <输出>     
通常最好获取最新的SchemaSpy Beta版本。该调用应类似于针对MySQL运行,除了使用-t sqlite指定数据库类型并将\“ database \”指向您的.sqlite文件外。 SQLite驱动程序使用JNI来实现,因此您需要确保sqlite_jni.dll位于PATH中。要将其临时添加到Windows命令提示符下的PATH中,请执行以下操作:   设置PATH =%PATH%; directoryContainingTheJniDll     
我是您提到的其中一篇文章的作者。 您需要编译schemaspy JDBC驱动程序。它是为UNIX编写的,但是有人向作者发送了有关在Windows环境中构建它的说明。但是,对于Windows,您需要使用sqlite.jar和.dll预先构建一组文件。一旦将其放在类路径中,它就很简单。 如果这对您来说太多了,您始终可以启动sqlite3 CLI,并使用
.schema
命令转储表,并将其设置在您知道如何连接的数据库中。或设置和Ubuntu VM;)     
我意识到这是一个古老的问题,但是根据记录,可以按照http上的说明为其滚动一个新的.properties文件,而无需花费很多麻烦就可以使SchemaSpy使用Xerial SQLite JDBC驱动程序。 //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的错,因为它们没有将它们包装在“ 5”中。还是架构设计师将关键字用作表名和列名的错误:)     

要回复问题请先登录注册