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 是要付费的。
简单访问数据库代码如下:
1 2 3 4 5 6 7 8 9 10 |
String databaseURL = "jdbc:firebirdsql:embedded:test.fdb"; String user = "sysdba"; String password = "masterkey"; String driverName = "org.firebirdsql.jdbc.FBDriver"; Class.forName(driverName); Connection conn = DriverManager.getConnection(databaseURL, user, password); Statement stmt = conn.createStatement(); ResultSet 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 Blog
[版权声明] 本文采用 署名-非商业性使用-相同方式共享 4.0 国际 (CC BY-NC-SA 4.0) 进行许可。
不知如何用C API连接操作Firebird?
既然 firebird 用 C 写成的,应该有可以用 C API 来连接操作,我也去试一试。不过,另一方面,如果你要用 C API 来操作嵌入式数据库,那么 SQLite 是个很不错的选择。