问题标签 [fibplus]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
4 回答
18479 浏览

delphi - 如何将 jpg 图像保存到数据库,然后使用 FIBplus 和 TImage 将其加载到 Delphi 中?

如何将 jpg 图像保存到数据库,然后使用 FIBplus 和 TImage 在 Delphi 中加载它?

0 投票
1 回答
904 浏览

delphi - 通过单击列标题使用 FIBDataSet 对 DBAdvGrid 进行排序

我发现上述问题的唯一解决方案是将“ORDER BY”语句附加到 FIBDataSet 的 SQL 查询中。有点奇怪,因为 Grid 有它自己的 quicksort() 实现,但我无法让它工作。任何想法,将不胜感激。

0 投票
2 回答
845 浏览

delphi - 在 Delphi 7 上将 IBXpress Interbase 6 应用程序移植到当前的 Firebird 平台?

只是想知道这里是否有任何需要注意的问题。我们有一个多年前为客户开发的旧版 D7 应用程序,它使用 IBXpress 与开源 Interbase 6 构建进行对话。

这些天,我们在该平台上遇到了许多问题(连接/启动新硬件的速度非常慢是主要的),并且客户已经同意花费一些时间/金钱将数据库转移到 Firebird。

我们真的不想着手将它移动到 D2010(或 D2007,这将是我现在的偏好),因为我们认为我们可能不得不将数据库层从 IBXpress 移动到其他最适合 Firebird 的东西。归根结底,客户只是希望减轻数据库的痛苦,而不是大修/升级/重写应用程序。

鉴于 Firebird 的祖先,从 IBXpress Interbase 6 到 Firebird(无论如何)是一条相当轻松且易于理解的路径吗?我们在现有的 IB 数据库中已经有相当多的存储过程、触发器(甚至数据类型)等(并且客户有许多付费客户都在使用这个平台)所以我们觉得去 Firebird 更有可能更顺利移动而不是移动到 SQL Express(或完全是另一种风格的 DB)。

请注意,我们并不是在寻找“嵌入式”数据库宣传——在我们客户的许多客户的安装中,该软件以多用户客户端-服务器的方式使用,因此保持这种方法很重要。

0 投票
1 回答
589 浏览

database - 当给定路径上不存在 gdb 文件时如何在 Connect 上捕获 Interbase 异常

我在我的机器上安装了 fib+ comps 并试图在连接时捕获 Interbase 异常,但我无法捕获一个异常

如果我将 DBPATH 更改为不存在的 gdb 文件,则会引发异常,例如

由于系统错误导致无法成功执行后续语句。文件的 I/O 错误。尝试打开文件时出错

是否有可能捕捉到这个异常????我调试了我的代码,但光标直到尝试捕获异常块才出现,在此之前我提到的异常出现了!!!

如果是,我怎么能捕捉到这种异常????

0 投票
1 回答
2774 浏览

delphi - 如何使用 FibPlus 数据集或 FibQuery 使用 MasterSource 和 MasterFields 功能

我正在重写一个现有的 BDE 数据库程序,以使用FibPlus组件使用Firebird 。

由于我几乎在每个地方都使用过 TQuery 组件,因此更改相当简单。

除了一件事我似乎没有找到:

  • 在我的一个表单中,我有两个相互上方的网格,链接到 TTable 组件,其中下面的网格仅显示与上方网格中所选记录具有相同键的记录 - 因此是主/详细关系。

这在 BDE 中使用MasterSourceMasterFields属性很容易完成。

如何使用 FibPlus FibDataset 或 FibQuery 组件来实现这一点?

0 投票
2 回答
5011 浏览

delphi - 如何使用 FibPlus 中的 TpFIBQuery 组件读取 BLOB(Text) 字段

我将Delphi 7FibPlus组件一起使用。其中之一是TpFIBQuery

我正在使用通用表从表中加载数据

返回的字段之一是 type BLOB(Text)

我似乎无法informatie使用以下 3 种方式中的任何一种将值放入字符串列表:

我已使用 Database Workbench 确认表中的字段确实包含保存的文本。

任何人 ?

0 投票
1 回答
541 浏览

delphi - 是否可以为 FIBPlus 提供分离的 TpFIBDataset?

我记得当我使用ADOfor Delphi( dbGo) 时,有可能创建一个分离的数据集。我的想法是我可以从数据库中读取我想要的所有数据,然后将连接属性设置为 nil。这导致TADOQuery作为内存表工作。然后我可以使用并TADOQuery作为TDataSet参数传递给我的其他方法,而不必担心我会保持不必要的连接或事务打开。

我希望在使用 FIBPlus 库时具有相同的功能。目前我需要将数据从TpFiBDataset其他结构复制,然后关闭数据集。否则,要访问数据集的行,事务必须保持打开状态,即使我已经获取了所有数据。

我自己无法实现分离数据集的功能,这可能吗?

0 投票
1 回答
3499 浏览

delphi - Delphi - DBGrid 不显示 UTF8 计算字段

我有一个 TDBGrid 链接到一个 TDataSource,后面有一个 TFibDataSet。在数据集的 OnCalcFields 上,我尝试添加字符串“Russisch (русский)”。

问题是在网格中结果显示为 :Russisch(????????)

有相同的结果

FibDataBase 组件的 ConnectParams.Charset 设置为 UTF-8。我还设置了 DBParams 值lc_ctype=UTF8

我在这里做错了什么?

LE:Delphi XE、Firebird 和 UTF8——这并不能解决我的问题。

LE1:问题仅出现在计算字段上。实时数据“Russisch (русский)”正确显示。

0 投票
1 回答
1607 浏览

delphi - 将应用程序从 FIB+ 迁移到 Fire-DAC 组件的经过验证/推荐的方法

我正在将大量具有内部硬连线 FIB+ 连接的应用程序迁移到 Fire-Dac 组件,并且我正在寻找一些最不痛苦的方法,如何做到这一点。

首先,我已经解耦并迁移了后端以获得连接中性和连接依赖部分,并手动重构了现有应用程序。我也写过 FireDac 部分。

迁移Delphi代码似乎没问题...

但是屁股的大痛似乎是在设计时迁移放置在表单和数据模块上的组件:我安装了 GExpert 并尝试了它的命令 Replace Components with defined rules 如何映射一些属性,但它失去了组件之间的相互引用,可能由于逐步更换过程中的类型不兼容。

我目前的方法是手工工作:为旧 FIB+ 组件的名称添加后缀,将原始名称复制并粘贴到新的相应 Fire-Dac 组件中。我对所有组件重复此步骤,然后正确设置属性并删除 FIB+ 组件。它允许我在此过程中一次又一次地检查旧设置。

有没有人有一些经过验证/推荐的方法来做得更好?

谢谢,pf

0 投票
1 回答
1070 浏览

delphi - Delphi - Firebird 数据迁移 - 不同的字符集

我需要将数据从不同的旧数据库迁移到新数据库(在 Firebird 2.5 上使用 IBExpert 创建)。我正在使用FIBPlus 组件。现在我知道旧的 varchars 和 blob 文本在不同的字符集和排序规则中(大多数是 WIN1252)。

DBImport(我从中获取数据的数据库)具有以下属性:

DBNew(新数据库)具有以下属性:

我在这里使用 TOndrej 提供的 SQL 获取字段定义

在新数据库中,相同的字段现在是 UTF8。

我的问题是:如果我使用FieldByName ('etc').AsString 从旧数据库中读取,并使用 ParamByName ('etc').AsString 填充新数据库,则字符串和文本 blob 数据是 100%相同(不管 DBImport 字段的字符集)?