嵌入式数据库Firebird的使用

firebird是一个十分小的开源数据库,可作为像Access一样使用的文件型数据库,单用户连接;也能够以服务方式启动,支持多用户访问,Hibernate有对该种数据库的支持,这里不详细对该数据库本身特性作介绍了。


用jdbc连接嵌入式数据库Firebird最简单的使用是只需要两个动态库文件和一个(JDBC驱动)jar包

动态库是:
fbembed.dll   ---- firebird数据库提供
jaybird.dll   ---- 下载的jdbc驱动包提供,在FirebirdSQL-1.5.5JDK_1.4中
firebirdsql-full.jar ---- 下载的jdbc驱动包提供,在FirebirdSQL-1.5.5JDK_1.4中

把动态库放在该在的地方,例如应用程序的user.dir目录下,jar包放在classpath下
以上是最简单配置

其他数据库压缩包中还有
ib_util.dll  ----- 不知是什么工具

可以附加两个配置文件
aliases.conf    ---- 数据库别名配置(可选)
firebird.conf   ---- 数据库系统配置文件(可选)

jdbc的驱动包中还包含有以下文件
firebirdjmx.jar ---- jmx支持,怎么现在软件都希望能通过jmx来管理
firebirdsql.jar ---- 也是jdbc驱动,不知道firebirdsql-full.jar比它多了哪些东西
firebirdsql-pool.jar ---- 为该数据库提供的连接池
libjaybird.so   ---- 配合jdbc使用的linux下用的动态库

libjaybird.so   ---- 配合jdbc使用的linux下用的动态库
GDS32.DLL  ---- 提供其他数据库客户端管理工具使用的动态库,如工具 IBAdmin,可惜 IBAdmin 是要付费的。

简单访问数据库代码如下:
 1String databaseURL = "jdbc:firebirdsql:embedded:test.fdb";
 2String user = "sysdba";
 3String password = "masterkey";
 4String driverName = "org.firebirdsql.jdbc.FBDriver";
 5
 6Class.forName(driverName);
 7
 8Connection conn = DriverManager.getConnection(databaseURL, user, password);
 9Statement stmt = conn.createStatement();
10ResultSet rs = stmt.executeQuery("select * from users where name='Unmi'");

数据库test.fdb在相对user.dir的目录下

Firebird对中文支持的也比较好
不知道,离开了客户端应如何通过代码create database tttt去创建新的数据库?

多人访问可能会出现的错误提示
Exception in thread "main" org.firebirdsql.jdbc.FBSQLException: Resource Exception. I/O error for file CreateFile (open) ""
Error while trying to open file
null

从早先写在QQ空间中搬移过来:原文 嵌入式数据库Firebird的使用

附:Firebird 数据库的官方网站是http://www.firebirdsql.org/,也能在此下载到数据库的驱动。 永久链接 https://yanbin.blog/to-use-firebird-db/, 来自 隔叶黄莺 Yanbin's Blog
[版权声明] 本文采用 署名-非商业性使用-相同方式共享 4.0 国际 (CC BY-NC-SA 4.0) 进行许可。