问题标签 [firebird]

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 投票
2 回答
7107 浏览

firebird - 如何执行 Firebird 的命令行卸载?

我使用命令行开关从我的应用程序的安装包中安装 Firebird 数据库。但现在我想以同样的方式卸载 Firebird。

问题是 Firebird 的 Windows 安装可执行文件是使用 Inno Setup 构建的。为了卸载 Inno Setup 可执行文件,您必须运行一个名为uninst???.exeFirebird 安装目录的文件,其中 ??? 是一些三位数字。

细节:

  • 我使用 InstallAware 作为我的安装构建器。它提供了一种类似于 InstallShield 的脚本语言。
  • 我正在安装 Firebird 的 SuperServer 版本,而不是嵌入式版本。(我需要此应用程序的并发用户访问权限。)
0 投票
3 回答
4615 浏览

database - 火鸟数据库密码

我真的很想知道,如何保护 firebird 数据库不被任何用户打开,而是从它自己的应用程序中打开。如果我分发带有单个文件 Firebird 数据库(未嵌入)的桌面应用程序,如何保护数据库不被复制到另一台运行 Firebird 且具有已知 sysdba 密码的机器上?

我搜索了与这个主题相关的问题,只找到了这个:Finding a legacy firebird/Interbase database password

如果该帖子中的答案是正确的,如何将桌面应用程序与 firebird 数据库一起使用并禁止任何用户使用另一台机器打开它?或者我应该使用其他数据库,如 mySQL 或 PostgreSQL?

PS:我使用Delphi 2006 开发GUI。

0 投票
10 回答
54313 浏览

sql - Firebird 的“无法完成网络请求”或“连接被拒绝”,仅在一台机器上

我在公司的一台计算机上遇到了一个看似独特的问题(必须是我老板的)。我有一个来自 Borland C++ 的程序,它使用TSQLConnection. 它连接到作为应用程序运行的本地 Firebird 服务器 2.1.1.17910。其他电脑工作正常。

绝对不会在这台笔记本电脑(本地服务器)上连接任何东西。我记得他在安装 InterBase 时也总是遇到问题。我认为他可能安装到 7.5。它现在已经消失了,我检查并清除了所有旧的GDS32.dll文件并用 FireBird 更新了它们,并且无论如何连接都在使用fbclient.dll ......

我尝试卸载并重新安装 FB 并将其作为服务运行。没用。

我进入 etc/services 并在这一行中添加:

没有骰子。

在数据库位置前面粘贴“localhost:”会出现此错误

无法完成对主机“localhost”的网络请求。无法建立连接。

我检查了 netstat,它正在监听 127.0.0.1 端口 3050...

尝试在数据库位置之前粘贴“127.0.0.1:”,我得到:

远程接口拒绝连接

尝试完全取出 127.0.0.1 或 localhost 并仅使用数据库位置,这是正确的位置,我得到了

不可用的数据库。

完全相同的 CD在其他机器上也能正常工作。我尝试粘贴“localhost”、“127.0.0.1”,并且在数据库位置前面什么都没有,并且在其他机器上都可以正常连接。

我已经让他关闭了防火墙,仍然没有骰子......这个问题已经持续了很长时间,我已经走到了尽头。我已经尝试了我能想到的一切。它在我的电脑上运行良好,空白测试电脑,对于 beta 测试人员......除了我老板之外的所有人。任何帮助将不胜感激。

0 投票
4 回答
656 浏览

delphi - 将客户端应用程序迁移到 FB 2.1

我将 Delphi 7 与 DBExpress 一起使用。我想将我的应用程序完全迁移到 firebird 2.1。我已经知道在服务器端该做什么,但在客户端并不确定。

在 TSQLConnection 组件中,我看到 vendorLib 属性指向 GDS32.dll。driverName 是 Interbase,getDriverFunc 是 getSQLDriverINTERBASE。

我不知道该怎么做才能使我的连接使用 fbclient.dll。我尝试在 vendorLib 中简单地将 gds32.dll 更改为 fbclient.dll,但它在我的应用程序中导致了一些访问冲突。

有小费吗?

0 投票
1 回答
219 浏览

sql - SQL TABLE DEFAULT 中的时间算术

在我的表格中,我想将一列的默认值设置为从现在起 30 天。这需要是一个真实的,而不是计算的列。就像是

alter table T_NAME alter column EXPIRATION set default CURRENT_TIMESTAMP + 2592000

无效,但你明白了。我确信我可以使用插入前触发器来做到这一点,但我只是想知道在默认子句中是否有一个我不知道的算术技巧。

我的数据库是火鸟 2.1.2

0 投票
3 回答
11442 浏览

unicode - 在数据库表中存储货币符号

我们使用 firebird 作为我们的数据库。我们如何在数据库中存储货币符号。我们应该使用哪个字符集或通常的最佳实践是什么?

例如,存储“$”或“¥”会直接显示,但更复杂的符号不会正确显示在数据库表中,即“₡”不会存储在数据库中。

这种事情通常被认为是“最佳实践”。

编辑-
让我指定我们使用的语言是 C#。我怀疑 UTF8 会是答案,但是我们如何将字符存储在数据库中,我们是使用 Unicode、Hex 还是 Decimal 等价的......还是只使用字符?

0 投票
7 回答
2863 浏览

php - Firebird 的哪个 PHP Web 框架?

是否有任何 PHP Web 框架可以与Firebird数据库完美配合?

通过“干净”,我的意思是开箱即用,没有黑客/定制/自制驱动程序。

到目前为止,我已经检查了CodeIgniterCakePHP之类的框架,但是它们对 Firebird 的支持是模糊的,或者最多是很少的。

0 投票
1 回答
659 浏览

queue - 队列实现

在多个用户尝试访问大约 100 000 条记录的情况下,实现快速队列的最佳方法是什么。只有一个用户可以获得一个唯一的行。现在我正在使用 sql 数据库(火鸟),但有很多问题死锁/高数据库负载。

0 投票
1 回答
7015 浏览

utf-8 - Firebird - UTF8 VarChar 大小

我正在将我们的 firebird 数据库中的所有 varchar 列更改为 UTF8,但是我不明白 varchar 大小的差异。

例如,将 charset 和 collat​​ion 设置为空,我们可以将 varchar 大小设置为 255,如果我们将 charset 和 collat​​ion 设置为 UTF8,当我们将 varchar 设置为 255 时,它会读取不同的值。

UTF8 中 varchar(255) 的等效 varchar 大小是多少?

0 投票
2 回答
589 浏览

windows - 有限用户的 Firebird 连接失败

在我的 Delphi7 应用程序中,我可以在以管理员身份(“Dave”)登录时连接到数据库,但在以标准或受限用户(“Paris”)身份登录时不能。发生在 XP Home 和 Vista Business Ultimate 64 上。我为 db 使用别名,并尝试将 .fdb 文件放在 Program Files 中、C 驱动器上的应用程序文件夹中以及 Users\Application Data & Documents and settings\应用程序数据。

放置 .fdb 文件是否有经过验证的真实规则?我错过了一些明显的东西吗?


是时候改写这个问题了。我仍然遇到用户访问受限的相同问题,但现在知道 Firebird 作为服务运行 - 它应该能够在任何地方读/写任何文件。而且,mghie,您建议我尝试使用 isql 访问是天才。我可以作为受限用户连接。我可能在我的应用程序中破坏了某些东西。并且 IBO 绊倒了它。

改写的问题:普遍接受的安装 .fdb 文件的最佳位置是什么?


是的,我可以将 isql 连接为“Paris”。我怀疑困难与 .fdb 所在的位置有关。a) Program Files\Appname\Appname.fdb b) C:\Appname\Appname.fdb c) C:\Documents and Settings\All Users\Application Data\Appname\Appname.fdb

当数据库(&别名)在所有这些地方时,应用程序不能作为受限用户工作。