我在这里找到了很多比较,但不是这个比较; 那么,每个人最好的是什么?
我想我不是"得到它".如果我的计算机上没有安装SQLite,并且我想编写一个使用嵌入式数据库的Java应用程序,并且我将SQLiteJDBC JAR下载/导入到我的项目中,那么我需要的是什么?或者,我是否需要先安装SQLite并为我的SQLiteJDBC代码创建一个数据库文件以连接并运行查询?
如果是这种情况,并且它不足以下载/导入SQLiteJDBC,那么这是不是意味着我必须确保在我想要运行我的Java应用程序的每个系统上安装SQLite?并且不认为战胜便携式/嵌入式数据库的目的是什么?
基本上,我已经厌倦了SQLiteJDBC教程,因为:
非常感谢任何帮助!
我想访问Sqlite中任何特定表的所有特定视图.我知道我可以使用sqlite_master获取数据库中所有可用表的列表
SELECT name from sqlite_master WHERE type='table';
Run Code Online (Sandbox Code Playgroud)
以及使用的所有可用视图的列表
SELECT name from sqlite_master WHERE type ='view';
Run Code Online (Sandbox Code Playgroud)
但我想找到特定表的所有可用视图.我怎么做 ?
我正在为即将到来的Java servlet应用程序中的嵌入式数据库做出决定.我归结为两个最终竞争者:SQLite与SQLiteJDBC"纯Java"驱动程序与Java DB(又名Derby).
这是我的杀手级标准:应用程序必须在任何支持Java的操作系统上运行,特别是我们有Solaris,CentOS,Windows x86和Windows x64主机,它们都需要运行应用程序.安装必须只涉及将war文件复制到目标服务器的部署文件夹,然后让服务器完成剩下的工作(这只不过是将zip复制到目标服务器,然后让服务器解压缩并运行应用程序).作为安装的一部分,应该没有使用本机二进制文件,并且没有其他设置逻辑.(这实际上不是我的要求,它是公司的,对于所有基于servlet的应用程序,但我确实喜欢它).
我知道Derby(Java DB)符合上述标准.我做过一两次.但我真的很喜欢SQLite的单一文件架构,以及SQLite社区大约是Derby的20倍.我也担心甲骨文有一天会杀死德比,因为他们现在有五个竞争的数据库产品在他们的保护伞下并且永远无法继续下去.德比可能是家务开始时的第一个伤员.
所以,我正在研究SQLiteJDBC,它声称拥有SQLite的"纯Java"JDBC驱动程序.现在,我理解"纯Java"意味着没有操作系统依赖项或其他库,可以在任何操作系统上的任何JVM中运行驱动程序.所以,我去获取带有纯Java驱动程序的jar文件.作为好奇的一种,我看着它.然后我注意到它在根目录中包含4个带有".lib"扩展名的文件,如下所示:
linux-amd64.lib
linux-x86.lib
mac-universal.lib
win-x86.lib
那么,那是什么呢?这些是用于命名操作系统的本机库吗?如果是这样,我可以假设这个纯Java驱动程序只能在jar中具有适当lib文件的平台上运行吗?如果是这种情况,我可能不得不将SQLite从竞争者列表中删除,因为winX64和Solaris是我们这两个最重要的操作系统.
或许我误解了,纯Java驱动程序真的是纯Java,它会在任何JVM中运行吗?
欢迎所有回复!
先谢谢你,约翰
我正在内存中创建一个临时的 sqlite jdbc 数据库结构。像这样的东西,
Connection connection = DriverManager.getConnection("jdbc:sqlite::memory:");
Run Code Online (Sandbox Code Playgroud)
但是,能够在调试时查看/可视化这个数据库会非常好。我创建了一套完整的数据库,可以使用ResultSet and Statement.executeQuery("Query");
任何想法,如何在 Netbeans 调试器中实现。
我试图在Java Applet中访问我的SQLite3数据库.当我运行我的代码连接到数据库时,我收到此错误没有为a.db找到合适的驱动程序,我该如何解决?
现在我并不完全确定我已经安装了正确的驱动程序......我会告诉你我做了什么,你能告诉我还需要做些什么来让Eclipse IDE找到SQLitejdbc驱动程序:
- BK信息:在Windows 7上,使用Eclipse Helios Java
- 我有一个在python中创建的SQLite3数据库,我想在我的Java Applet中读取它
- 我从http://www.zentus.com/sqlitejdbc/下载了sqlitejdbc-V056.jar文件
- 然后我将上述文件复制并粘贴到路径C:\ Program Files\Java\jre6\lib&C:\ Program Files\Java\jre6\lib\ext
- 在Java Applet中运行以下代码并获得一个异常文本:"找不到合适的驱动程序用于a.db"
Class.forName("org.sqlite.JDBC");
Connection conn = DriverManager.getConnection("a.db"); // exception thrown here
Run Code Online (Sandbox Code Playgroud)
任何信息都会非常有用.我是否需要将驱动程序导入Eclipse项目?