Firebird 数据库使用心得

Firebird数据库的安装及使用 本文介绍了Firebird数据的的安装及使用,还有在C#中对Firebird数据库的基础操作。 阅读详情

      本人想做一个桌面应用,需要一个免安装的嵌入式关系数据库,在对比了 Access 和 Firebird 之后,选择了更简便、性能更好的后者。

  • Firebird 简介:

      firebird是一个真正的关系数据库,支持存储过程、视图、触发器、事务等大型关系数据库的所有特性,它是一个开源的,可以自由使用的数据库(即使是商业上的使用)。具有以下的特点:

  •  
    1. 支持原子性,并发性,隔离性等概念。
    2. 支持事务的多个版本功能。
    3. 支持存储过程。
    4. 支持事件:存储过程和触发器可以引发事件,这个事件可以被客户端程序监听到。
    5. 生成子:生成子也称为序列,它可以很容易的实现自动增加的字段。它是一个INT64的长度,因此,它可以用在一个事务中,也可以用在其它很多方面。
    6. 只读数据库:我们可以把数据库存放在CD中,形成一个只读数据库。如果我们的应用程序也在光盘上,再加上嵌入式的FB数据库服务器,便可以得到一个无与伦比的 CDLIVE(即只用光盘就可以运行起来)应用。
    7. 全事务控制:一个客户端可以存在多个并发的事务。并且每一个事务都可以独立的进行控制,两段提交功能可以保证数据库的一致性。锁优化机制也支持多个事务的保存点。
    8. 触发器:每一个表可以有多个并发的行级触发器,可以在插入前,插入后,更新前,更新后,删除前,删除后进行触发。我们可以在触发器中写入PSQL语句,默认值,产生异常,firebird现在支持统一触发器,即可以一个触发器中,一次性管理插入,更新,删除的操作。
    9. 字符集:Firebird实现了很多国际标准的字符集,包括Unicode。
    10. 扩展函数:可以使用C语言,C++,DELPHI写UDF,使用UDF(用户定义函数库)可以很容易的挂入数据库引擎中以扩展我们需要的功能.
    11. SQL标准兼容:Firebird 实现了全部SQL92所要求的功能,实现了SQL99最常用的的要求。包括但不限于"FULL/LEFT/RIGHT [OUTER] JOIN , UNION, DISTINCT , 子查询 (IN, EXISTS),内部函数 (AVG, SUM, MIN, MAX, COALESCE, CASE, ..), 主键,外键,唯一索引以及所有通用的数据类型。
    12. 在线备份:不需要停止数据库即可进行备份,一个备份进程产生一个数据库当前的快照。因此,用户可以在备份期间持续的工作,即实现24x7(每天24小时,每周7天) 的操作。
    13.  Firebird还实现了域,字段级别的约束,视图,异常,规则和权限管理
    14. 协议:Firebird协议使用IPL(interbase public license)和IDPL(Initial Developer's Public License),这种协议类似于Mozilla协议。你可以完全的自由使用并且可以自由的布署在你的客户应用上。
    15. 包含三个版本:(a)标准服务器:每一个客户连接将引发一个服务器进程(支持多处理器) ;(b)超级服务器:一相服务器进程模块管理所有的客户端连接,当前不支持多处理器;(c)嵌入服务器:整个服务器引擎就是一个动态库,只支持本地通过IO进行调用;
    16. NET C# 和 Java 的支持:官方提供了.NET Data Provider 和 JDBC Driver 。

 

  •  Firebird Data Provider For .NET 连接 Firebird 数据库文件
    1. 下载 Firebird 嵌入式数据库:Firebird-2.5.0.25920-0_Win32_embed_pdb_RC2(ZIP格式,8.5MB) 下载解压到本地磁盘即可,无需安装。
    2. 利用可视化的数据库管理工具创建数据库:Firebird 的数据库管理工具有很多,本人使用了 IBManager,只有一个 EXE 文件,免安装。
    3. 配置数据库文件所在目录:从第1步中解压出来的目录下复制文件 firebird.msg 和 intl、udf 两个子目录的所有内容到放置数据库文件的目录下。注:数据库文件可以放置在任何可访问的目录上,不必和应用程序同一目录。
    4. 配置应用程序目录:从第1步中解压出来的目录下复制文件以下 6 个文件到应用程序目录:fbembed.dll、firebird.conf、ib_util.dll、icudt30.dll、icuin30.dll、icuuc30.dll。
    5. 引用 Firebird .NET Provider 的 dll :先下载  Firebird.Net Provider v2.5.1 (ZIP格式,200KB),解压,将其中的 FirebirdSql.Data.FirebirdClient.dll 添加引用到项目。
    6. 连接:个人也记不住连接字符串,直接使用 FbConnectionStringBuilder 创建连接字符串,具体代码如下:

 

 

 

 

参考资料:

  1. 官方网站 http://www.firebirdsql.org
  2. 中文社区 http://www.firebird.net.cn
  3. Firebird介绍 http://baike.baidu.com/view/424640.htm?fr=ala0_1
  4. Access和Firebird的性能比较 http://blog.youkuaiyun.com/HiSpring/archive/2010/02/17/5310270.aspx
  5. 相关下载 http://sourceforge.net/projects/firebird/files/
如何读取火鸟数据库FireBird的.fdb文件 Firebird是一个跨平台的关系数据库系统,目前能够运行在Windows、linux和各种Unix操作系统上,提供了大部分SQL-99标准的功能。它既能作为多用户环境下的数据库服务器运行,也提供嵌入式数据库的实现。 阅读详情

相关推荐

Firebird Data Provider For .NET 连接 Firebird 数据库文件

下载 Firebird 嵌入式数据库:Firebird-2.5.0.25920-0_Win32_embed_pdb_RC2(ZIP格式,8.5MB)  下载解压到本地磁盘即可,无需安装。利用可视化的数据库管理工具创建数据库:Firebird 的数据库管理工具有很多,本人使用了 IBManager,只有一个 EXE 文件,免安装。配置数据库文件所在目录:从第1步中解压出来的目录下复制文件 firebird.msg 和 intl、udf 两个子目录的所有内容到放置数据库文件的目录下。注:数据库文件可以放置在任

无名剑 5166

firebird数据库安装连接的一些常见错误及解决方法

firebird数据库安装连接的一些常见错误及解决方法

hcy19970721的博客 5504

Firebird Database On MacOSX

Firebird Database firebird作为一款优秀的嵌入式(之一功能),用于桌面开发最合适不过了。之前也用过SQLITE做过一些小工具,但是在安全性方面表现不佳,而且不支持存储过程等特性,经过比较最终转向firebird,整理了下常用的命令语句和SQL。 用户管理 gsec -user sysdba -password masterkey modify

Gtlions Tracker 1487

再谈 Firebird / Interbase 自增字段和WebService MIDAS 框架下的 ClientDataSet

架构: 1. 数据库服务器:FireBird; 2. WebService 服务器端,采用 FireDAC 控件 + DataSetProvider; 3. WebService 客户端,采用 ClientDataSet 绑定到服务器端的 DataSetProvider; 4. 数据库表名:TEST,有2个字段:XUHAO, DESC;其中 XUHAO 是整数,我希望它是个顺序自增的字段,是主键,也是本文关注处理的对象。 代码需求 上述架构下,连接数据库的控件,采用 FireDAC 还是其它

pcplayer的博客 937

使用FIREBIRD数据库注意事项

区分大小写,建议数据库表和语句都是大写 本Markdown编辑器使用StackEdit修改而来,用它写博客,将会带来全新的体验哦: **日期类型和映射得整型要注意 代码块高亮 图片链接和图片上传 LaTex数学公式 UML序列图和流程图 离线写博客 导入导出Markdown文件 丰富的快捷键 快捷键 加粗 Ctrl + B 斜体 Ctrl + I 引用 Ct...

YINSZ2007的博客 1742

FirebirdMaestro(火鸟数据库可视化工具)

FirebirdMaestro(火鸟数据库可视化工具),安装简单方便,占极小资源。打开压缩文件解压后,直接点击firebird_maestro_setup.exe文件,下一步傻瓜式安装即可!

Firebird 数据库使用心得2

本人想做一个桌面应用,需要一个免安装的嵌入式关系数据库,在对比了 Access 和 Firebird 之后,选择了更简便、性能更好的后者。 Firebird 简介:       firebird是一个真正的关系数据库,支持存储过程、视图、触发器、事务等大型关系数据库的所有特性,它是一个开源的,可以自由使用的数据库(即使是商业上的使用)。具有以下的特点:   支持原子性,

hemeinvyiqiluoben的专栏 910

Firebird数据库Firebird.dll供VB6使用:C++dll源码和VB6 Demo源码演示

仅一个Win32 dll (非COM, 可直接使用), 让VB6拥有强大而不复杂的Firebird数据库,包含C++dll源码和VB6 Demo源码演示 firebird是一个全功能的,强大高效的,轻量级,免维护的数据库。它很容易让您从单用户,单数据库升级到企业级的应用,火鸟是提供许多 ANSI SQL 标准功能关系数据库,提供优秀的并发性、 高性能和对存储的过程和触发器的功能强大的语言支持。 firebird是一个十分小的开源数据库,可作为像Access一样使用的文件型数据库,单用户连接;也能够以服务方式启动,支持多用户访问

开始学习Firebird

Firebird数据库前身是Interbase,源于Borland公司。昨天,下载了其2.0版本,想学习一下。从今天开始,我将陆续写一些学习心得,以便纪录实践历程。

Hero King的专栏 809

Node.js操作Firebird数据库教程

主要为大家分享了Node.js操作Firebird数据库教程,思路清晰便于大家理解,感兴趣的小伙伴们可以参考一下

数据分析面试八股文--技能软件类

数据分析的“三板斧"指的是三个在 Python 数据分析领域广泛使用的库:NumPy,Pandas,和 Matplotlib。这三个库提供了处理和分析数据的强大工具。NumPyNumPy(Numerical Python)是一个开源 Python 库,用于支持大型多维数组和矩阵运算。此外,NumPy 还提供了大量的数学函数来操作这些数组。np.array():创建数组np.arange():返回一个有终点和起点的固定步长的排列。

zfyzfw的博客 4377

[转] InterBase/FireBird用起来感觉不错

InterBase/FireBird用起来感觉不错from :http://blog.sina.com.cn/s/blog_3fed3a390100d9e4.html使用D6+INTERBASE6(D6自带的),使用TIBClientDataSet控件效果很好,使用 Cach update 麻烦很多。//下面是李维的文章,也许对你有帮助。InterBase一直被相当数量的接触过它的...

dianxunzhang1095的博客 218

服务器centos上安装IC618(virtuoso)教程

只需要按照提供的步骤即可实现IC618安装。有需要详情请联系QQ:563962386

swicthsober的博客 1万+

Firebird数据库的安装配置与使用

Firebird数据库的安装配置与使用 【温馨提示:本文档所有操作均在root用户下进行】 一、安装 1、rpm包方式 我选用的安装方式是 使用rpm包安装 执行以下命令进行安装: $ rpm -ivh FirebirdSS-2.5.9.27139-0.amd64.rpm --force --nodeps 不加–force --nodeps会出现 /bin/sh is needed by xxxxxx(安装包的名字) 安装成功后查看firebird进程 安装位置默认会在/opt/firebir

aYeuh的博客 5757

SATA硬件电路设计实战:从接口规范到高速布线技巧

本文深入探讨了SATA硬件电路设计的核心要点与实战技巧。从接口物理电气规范、AC耦合电容与阻抗控制等基础,到FPGA/SoC高速收发器选型配置,再到应对6Gbps高速信号的PCB布局布线艺术,系统性地解析了SATA电路设计中的关键挑战与解决方案,助力工程师规避常见陷阱,实现稳定可靠的存储接口设计。

tech5的博客 530

FX2N-2AD模块实战:从硬件连接到FROM/TO指令编程详解

本文详细解析FX2N-2AD模拟量输入模块的硬件连接与FROM/TO指令编程技巧,涵盖BFM缓冲存储器配置、梯形图程序设计及工程实战经验。通过实例演示如何实现精准信号采集与数据处理,特别针对PLC系统中的常见故障提供解决方案,助力工业自动化工程师高效完成设备调试与维护。

prometheus9mon的博客 507

使用FireBird数据库基本知识

如果你想通过命令行进入到你安装的数据库下: 下载数据库3.0版本地址:http://www.firebirdsql.org/en/firebird-3-0-2/ 1.进安装目录bin文件夹,如果是3.0版本到根目录即可 2.数据库用户管理,使用命令:gesc -user sysdba - password masterkey 添加新用户:add huiqing -pw 123456 ...

cxws110的博客 4367

美团外卖 mtgsig 1.2 逆向工程与补环境实战指南

本文深入解析了美团外卖核心风控参数mtgsig 1.2的生成机制与逆向实战。通过拆解其复杂的JSON结构,揭示了设备指纹、环境信息加密等关键字段。重点阐述了在Node.js中模拟浏览器环境(补环境)的核心方法,包括DOM/BOM对象、本地存储及Canvas/WebGL等高级指纹的模拟技巧,为安全研究和合规自动化测试提供了一套完整的技术指南。

uber9的博客 409

在VisualStudio中使用EF操作Firebird数据库

在VisualStudio中使用EF操作Firebird数据库 因项目需要,笔者需要在VS2019中使用EF操作Firebird数据库。但Firebird在国内算是一款非常小众的关系型数据库,由于用的人少,所以遇到问题时很难查到解决方案。笔者花了一天的时间,踩了不少坑,终于解决了这个问题,遂成此文,希望帮助更多的后来人。 文章目录在VisualStudio中使用EF操作Firebird数据库前言概念解释关于DLL的版本说明总体配置思路详细配置1-安装相关软件2-使用gacutil注入dll3-按需修改mac

星悬_月的博客 1520

半导体晶圆调平系统:基于最小二乘法的实现方案

基于最小二乘法的晶圆调平技术通过数学建模与工程实现的结合,解决了半导体量测中高精度平面对准的核心问题。实际应用中,需根据设备特性优化采样策略、校准传感器误差,并通过实时性优化满足高产能场景需求。该方案的模块化设计(如分离数据采集、拟合计算、补偿输出)也为后续功能扩展(如引入机器学习优化拟合模型)提供了灵活性。

品质生活,极致编程。 1181

图像标注神器:完全开源免费的多功能标注工具Labelme详解

Labelme是MIT开发的免费开源图像标注工具,支持多边形、矩形等多种标注类型,适用于目标检测、分割等计算机视觉任务。提供Windows可执行文件和Python安装两种方式,可输出JSON格式并转换为COCO等标准数据集。具有跨平台、功能全面、社区活跃等优势,能显著提升标注效率,是AI视觉项目的重要数据准备工具。

数字人生 528

C/C++ 连接使用嵌入式数据库 InterBase / Firebird

嵌入式数据库与非嵌入式数据库的差别,在于运行模式的差别。并不是运行在嵌入式手持设备上的数据库就是嵌入式数据库,那种数据库我们通常称做嵌入式移动数据库。理论上讲,嵌入式设备一样可以运行网络数据库的服务端程序。 从这个意义上讲,似乎所有单机数据库都可以算嵌入式数据库,比如Access,Paradox,DBF等等,因为它们都不用启动数据库服务器即可使用。然而,我们通常不将上...

tan_kaishuai的专栏 1612

解锁IPG Photonics SmartWeld系统,开启焊接新时代

SmartWeld 系统是 IPG Photonics 研发的一款先进的激光焊接解决方案,它隶属于自动化激光焊接系统类别 ,但却凭借一系列创新技术和独特设计,在众多同类产品中脱颖而出。该系统基于 IPG 在光纤激光技术领域的深厚积累,融合了先进的光束控制、智能监测和自动化控制等技术,旨在为工业制造提供高效、精准且稳定的焊接工艺。与传统激光焊接系统相比,SmartWeld 系统的独特之处首先体现在其光束控制技术上。它能够精确地调整激光束的能量分布、光斑大小和形状 ,以适应不同材料和焊接工艺的需求。

远程部署调试 运行安装 项目调试 二次开发 项目技术新 持续迭代 部分源码免费分享 1428
上一篇: ID字段不采用数据库自增长的几点理由
下一篇: Access和Firebird的性能比较
HiSpring
博客等级 码龄20年 3粉丝 7原创
评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值