Firebird更新日志
Firebird2.5.5
2015年11月18日更新:
在这个版本改进:
时间戳和运行时统计数据中选择可用GBAK输出。
更好的验证和修正GFIX丢失的数据页。
Firebird2.5.4
2015年3月30日更新:
在这个版本改进:
在线验证用户定义的表和索引。
优化处理内部临时blob。
Firebird2.5.3
2014年7月17日更新:
在这个版本改进:
新的上下文变量添加到系统的名称空间。
增加一些限制:
最大连接数SuperServer/SuperClassic提出从1024年到2048年连接。
最大数量的输入参数为用户定义函数(udf)从10到15。
错误报告的改进。
物理备份提高处理性能和可靠性问题。
设置数据不再块并发连接。
更新或插入语句,返回子句添加到嵌入式SQL。
Firebird,中文名就是火鸟数据库,它提供了ANSISQL特性支持,并且可以完美运行于Linux、Windows和Unix平台。Firebird数据库有着优秀的并发特性和强大的存储过程和触发器的语言,需要的朋友下载试试吧!
火鸟数据库是什么
火鸟数据库是开源数据库,数据安全性比较好,费用也比较低,操作和维护就比较简单。云上督督用户端软件下载-云上督督app1.0.0安卓版
如果需要卸载的话,双击安装程序包,如果你已安装的话就会弹出1个窗口,上面有修复和卸载两个选择,选择卸载就能够进行卸载了。
功能特性:
支持原子性,并发性,隔离性等概念。
支持事务的多个版本功能。
支持存储过程。
支持事件:存储过程和触发器可以引发事件,这个事件可以被客户端程序监听到。
生成子:生成子也称为序列,它可以很容易的实现自动增加的字段。它是一个INT64的长度,因此,它可以用在一个事务中,也可以用在其它很多方面。
只读数据库:我们可以把数据库存放在CD中,形成一个只读数据库。如果我们的应用程序也在光盘上,再加上嵌入式的FB数据库服务器,便可以得到一个无与伦比的CDLIVE(即只用光盘就可以运行起来)应用。
全事务控制:一个客户端可以存在多个并发的事务。并且每一个事务都可以独立的进行控制,两段提交功能可以保证数据库的一致性。锁优化机制也支持多个事务的保存点。
触发器:每一个表可以有多个并发的行级触发器,可以在插入前,插入后,更新前,更新后,删除前,删除后进行触发。我们可以在触发器中写入PSQL语句,默认值,产生异常,firebird现在支持统一触发器,即可以一个触发器中,一次性管理插入,更新,删除的操作。
字符集:Firebird实现了很多国际标准的字符集,包括Unicode。
扩展函数:可以使用C语言,C++,DELPHI写UDF,使用UDF(用户定义函数库)可以很容易的挂入数据库引擎中以扩展我们需要的功能.
SQL标准兼容:Firebird实现了全部SQL92所要求的功能,实现了SQL99最常用的的要求。包括但不限于"FULL/LEFT/RIGHT[OUTER]JOIN,UNION,DISTINCT,子查询(IN,EXISTS),内部函数(AVG,SUM,MIN,MAX,COALESCE,CASE,..),主键,外键,唯一索引以及所有通用的数据类型。
在线备份:不需要停止数据库即可进行备份,一个备份进程产生一个数据库当前的快照。因此,用户可以在备份期间持续的工作,即实现24x7(每天24小时,每周7天)的操作。
Firebird还实现了域,字段级别的约束,视图,异常,规则和权限管理
协议:Firebird协议使用IPL(interbasepubliclicense)和IDPL(InitialDeveloper'sPublicLicense),这种协议类似于Mozilla协议。你可以完全的自由使用并且可以自由的布署在你的客户应用上。
包含三个版本:(a)标准服务器:每一个客户连接将引发一个服务器进程(支持多处理器);(b)超级服务器:一相服务器进程模块管理所有的客户端连接,当前不支持多处理器;(c)嵌入服务器:整个服务器引擎就是一个动态库,只支持本地通过IO进行调用;
NETC#和Java的支持:官方提供了.NETDataProvider和JDBCDriver。
Firebird数据库如何打开
Firebird安装使用教程

1.自定义函数问题.AccesstoUDFlibrary"rfunc.dll"isdeniedbyserveradministrator
花了很长时间,不明白为何,将rfunc.dll拷到udf目录,bin目录,windowssystem32目录都不能解决问题,google一下,网上有同样的问题,但没有解决方案,结果我重装了一下firebird就解决了.
2.存储过程中变量的定义
mssql存储过程中无论在哪都可以定义新的变量,但在firebird中,只能在as与begin之间进行定义.firebird的变量不能用@符号,我将@全部变成a就好了.
3.存储过程中变量的使用
select@i=count(*)fromtable1//mssql
selectcount(*)fromtable1into:i//firebird引用变量使用冒号
4.嵌入式sql,
firebird支持select*fromtableexists(select...)或select*fromtablein(select...)
但不支持select*from(select*from...)a,
我是将这类改写成视图解决的
5.case语句
mssql可使用field=case(),但firebbird仅支持case()asfield,
6.mssqlgetdate()变成CURRENT_DATE+CURRENT_TIME
select*fromsnartleavewhere dt_starttime<CURRENT_DATE+CURRENT_TIME
或
select*fromsnartleavewhere dt_starttime<CURRENT_DATE||''||CURRENT_TIME
7.返回数据集的存储过程写法(firebird写法有点麻烦)
CREATEPROCEDURESPVARTST2(
VAR_IPTARTNOCHAR(6))
RETURNS(
VAR_ARTNAMECHAR(10))
AS
begin
forselectv_name1fromsnartwherev_artNo=:var_iptartnointo:var_artnamedo
suspend;
end
8.自动增长字段的使用(autoincrement)
firebird有个发生器(generator)的东东,在发生器里记录值的增长,
再用触发器实现
begin
if(new.i_seqnoisnull)then
begin
NEW.i_seqno=GEN_ID(GEN_T_DB_ARTSEQNO_ID,1);
end
end
//GEN_T_DB_ARTSEQNO_ID就是创建的发生器,看到没有,也就是说不同的表不同的字段可以共用一个发生器,gen_id相当于identity,看起来比mssql复杂,其实也很简单。
9.发生器重置 mssql里自动增加的字段要重置好像很麻烦,较难控制,
firebird可以这样(存储过程中)
agenerator=Gen_ID(GEN_T_DB_ARTSEQNO_ID,Gen_ID(GEN_T_DB_ARTSEQNO_ID,0)*-1+1);
//agenerator是一个整形变量,好像一定要装gen_id的值符给一个变量才行,不知道有没有更好的办法,不用定义一个多余的变量
可参考如下网址:http://www.fingerbird.de/generatorguide_body.htm
10通过一个表更改另一个表的数据
mssql:updatetable1setcname=b.cnamefromtable1ainnerjointable2asbwherea.id=b.id
firebird:updatetable1asetcname=(selectcnamefromtable2bwherebwherea.id=b.id)
展开

剑雨昆仑手游下载-剑雨昆仑安卓版1.0 最新版
雨滴找零软件下载-雨滴找零软件15.0 免费版
店来客生意收银记账软件2.5.7 安卓版
PS滤镜下载-人像润色滤镜工具(Portraiture)2.3.3 英文注册版
最后一头战象ppt课件-语文最后一头战象ppt高清版
WiFi上网助手ios版下载-WiFi上网助手ios版1.0 苹果客户端版
李跳跳波吉1.0去广告软件下载-Miss Lee李跳跳软件波吉1.0
盛大游戏优化大师V3.3 Beta
挂轮公式计算器(超强的滚齿机差动挂轮计算程序)绿色单文件版
小猪的一生模拟器下载-小猪的一生游戏10.5.1 最新版
暴力武士游戏下载-暴力武士最新版(Crazy Samurai)1.0.6 官方版
PDF处理助手app-免费PDF处理助手1.1.8 简体中文免费版
香喷喷食谱app下载-香喷喷食谱app1.0.0安卓正式版
免root冷藏应用的软件-SuperFreezZ(免root冷藏软件应用)1.0 最新版
寒刃下载-寒刃传奇手游6.0.01 官方版
翻瓶挑战手游下载-翻瓶挑战安卓版1.13 官方版
小米3刷机工具1.0 中文绿色版
qq自定义步数软件-QQsport(qq自定义步数App)1.0 安卓版
神兽养成记手游下载安装-神兽养成记2.5.0 官方版
锁机木马破解软件-锁屏敲诈木马专杀工具免费版