纯Java SQLite库?

10

我看到了Java和SQLite,但哪些是纯Java的并且跨平台的?另外,哪一个是最好开始使用的?我从未使用过SQLite,但我认为它类似于MySQL。此外,它们中是否有任何一个带有用于测试查询的良好命令行工具?


鉴于SQLite没有数据库服务器,那么Type 4 JDBC驱动程序是否意味着您必须将SQLite的100%移植到Java? - C. K. Young
3个回答

13

SQLite在其他语言环境中受到了相当大的炒作,但是对于Java来说,您有其他可用的选择:

  • HyperSQL(更常被称为HSQLDB)是一种纯Java RDBMS,专门用于作为应用程序的一部分运行,这意味着您可以将其嵌入到软件中并且它可以正常工作。
  • H2是HypersonicSQL的完全重写(H2和HyperSQL的共同祖先),也是完全基于Java的。其中一个不错的功能是RDBMS仿真,它允许它使用特定于Oracle RDBMS的SQL语句进行操作。
  • 还有几乎必须的Apache Commons变体,Apache Derby。与其他两个一样,Derby也可以嵌入,并且具有小的JAR文件大小足迹。

至于工具,那就各不相同了。例如,大多数Hypersonic系列产品主要用于单元测试,这意味着您可以使用(几乎)普通的Java代码轻松地对数据库模式和实际查询进行单元测试。


4

Sqljet,与其名称相反,没有SQL语言,但可以使用SQLlite数据库。


3

这里有一份更新的答案,你可以尝试使用Xerial的Sqlite JDBC驱动程序。虽然它当前的版本不是纯Java,但它为主要操作系统打包了二进制文件,因此它大多数情况下都是可移植的。

同时,sqlite4java也为主要操作系统打包了二进制文件。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接