问题标签 [firebird-3.0]

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 回答
4944 浏览

c# - Firebird .NET 提供程序和嵌入式服务器 3

我正在尝试使用 .NET Firebird Provider 连接到嵌入式 FB 3.0.1 服务器。

据我所知,(也写在这里(第 6 页)),不再有 fbclient.dll\fbembed.dll,而是一个用于远程和嵌入式访问的客户端 fbclient.dll。

但是当我调用 FBConnection.Open() 时,我得到一个 System.DllNotFoundException:

有任何想法吗?

0 投票
1 回答
787 浏览

sql - 如何使用 Firebird 根据生日过滤两个日期之间生日的人的记录?

我想在我的数据库中查询生日在开始日期和结束日期之间的人。该字段与数据库中的日期一起存储,因此需要选择周年而不考虑年份。我尝试使用提取之类的函数来获取日期和月份,但是当开始日期大于最后一天时,不显示任何记录。有没有人有没有存储过程的解决方案?

0 投票
1 回答
1486 浏览

python - 如何通过 SQLAlchemy 在 Firebird 3 中创建“默认生成身份”字段?

我想通过 SQLAlchemy 创建列 ID。
SQL看起来像:

或者如何创建具有自动增量字段的表?

primary_key 的默认值,但不适用于 Firebird。

我将 fdb 添加到 github。
这个字符串 SQL 代码中需要什么,但我不知道如何在 SQLAlchemy 中设置 Column 来使用它。
IBExpert 的屏幕截图显示使用“默认生成为身份”后创建的内容。这与简单的生成器不同。

0 投票
1 回答
4265 浏览

firebird - 将列从 INTEGER 更改为 BIGINT

在我的数据库中,我有几个具有 INTEGER 类型的字段。我需要将其中一些更改为 BIGINT。

所以我的问题是,我可以只使用以下命令吗?

包含的数据是否以正确的方式转换?转换后,此列是“真正的”BIGINT 列吗?

我知道如果此列有限制(触发器、ForeingKey、...),这是不可能的。但是,如果没有限制,是否可以这样做?

还是通过帮助列转换它更好:

0 投票
1 回答
731 浏览

odbc - 通过 ODBC 连接到 firebird:x32 与 x64

我已经在 Win10 x64 最新的 firebird x64 3.0 上安装并在其下创建了数据库。我还安装了 x32 和 x64 ODBC 驱动程序。现在我已经通过 x64 驱动程序针对 fbclient.dll 创建了系统 DSN 连接并成功对其进行了测试。

之后,我通过不同的客户端创建了 x32 ODBC 系统 DSN 连接:1)如果使用 WOW64\fbclient.dll,我得到下一个错误:


火鸟 ODBC 设置

连接失败!加载插件Engine12时出错

Module C:\Program Files\Firebird\Firebird_3_0\plugins/Engine12 存在但无法加载

好的

2) 如果使用 'System32\gds32.dll' 我已经获得


火鸟 ODBC 设置

连接失败!

找不到文件数据库

好的

我如何通过 x32 连接到这样的实例?

0 投票
0 回答
1519 浏览

firebird - 存储过程的两个实例在 alter procedure 上导致“无等待事务上的锁定冲突”

当我在 Firebird Maestro 中显示存储过程时遇到 Firebird 3 问题,然后我打开另一个 Firebird Maestro 实例打开相同的存储过程,当我尝试更改并“重新编译”存储过程时,出现错误:

无等待事务的锁定冲突。元数据更新不成功。对象 PROCEDURE "" 正在使用中。

Firebird Maestro 的两个实例的示例只是为了更容易理解错误。但是,当使用任何其他数据库管理器或什至数据库连接组件(如 IBDAC 或 Firedac)时,也会发生相同的错误。

如果我没记错的话,当我使用 Firebird 2.5 版时不会发生这种情况。

0 投票
0 回答
1345 浏览

firebird - 从客户端连接到 firebird 服务器

我从 Windows 10 客户端连接到在 Windows Server 2012 上运行的 Firebird 3 时遇到问题。Firebird 正在服务器上运行,我的应用程序正常,可以访问服务器上的 Firebird 数据库。但是它无法连接到备份服务。

我在客户端上安装了 Flamerobin,当我运行“检索服务器版本”时,它根本无法连接到服务器,并出现“无法完成对主机服务器的网络请求”错误。

所以我的应用程序可以使用 Firebird 数据库运行,但没有其他东西可以连接到 Firebird 服务器。为什么?

在服务器本身上,连接到本地主机一切正常。

0 投票
1 回答
1435 浏览

database-connection - 连接到火鸟 3

我已经在 PC 和 VM 客户端上安装了 Firebird 3.0.1。我在两者上都安装了 Flamerobin 来测试连接。

  1. 我可以使用 Flamerobin 连接到 PC 和 VM 上的本地主机,所以我假设 Firebird 服务器都在两者上运行,并且 Flamerobin 都安装在两者上都OK

  2. 我可以从 PC 连接到 VM 上的 Firebird 服务器并打开一个数据库 Ok

  3. 我可以从 VM 中打开 PC 上的数据库,但是当我尝试在 PC 上检索服务器版本时出现错误ISC_Service_attach failed (Unable to complete network request to host)

我不知道问题是什么,我可以正常打开数据库,但无法访问任何实用程序服务。

我在 VM 和 PC 上都使用 fbclient.dll 3.0.1.32591

0 投票
1 回答
611 浏览

.net - 直到应用程序关闭,Firebird 才真正完成表删除

我有一个 .net 测试应用程序,它创建表,使用它们,然后多次删除它们。

当我使用 Firebird ADO.Net Data Provider 5.9.1 对 Firebird 3.0.2 数据库运行此应用程序时,它立即失败,因为它必须创建一个与之前删除的同名的表:表确实存在!

重新启动应用程序可以避免麻烦,但我不想在每次测试后重新启动它。

这个问题非常相似,但只是悬而未决,直接使用 Firebirdisql工具而不是 .Net 应用程序。

有没有办法在不重新启动应用程序的情况下实际删除 Firebird 中的表?

此应用程序测试许多其他数据库,但没有此问题:SQL-Server、SQL-Server Compact Edition、MySql、SQLite、Oracle、PostgreSQL。

这是 Firebird 的 MCVE 失败。用合适的代码替换前两行以获得连接字符串。所有其他代码只是 Firebird ADO.Net 数据提供者和 NUnit。它并没有完全像我的实际应用程序那样失败,但我认为这是相同的潜在问题。

仅从表中选择是不够的。只有在我将删除添加到测试中后,问题才出现。它在最后一次事务提交时失败,即丢弃的一个,并带有消息:

根据Nathan Brown 在 Github 讨论中的说法,这个麻烦似乎仅限于 Firebird ADO.Net 数据提供者。他将范围缩小到从 2.7.7 版本切换到 3.0.0。

0 投票
1 回答
1025 浏览

sql - Firebird calc between date skip weekend

I want to convert this sql code to firebird sql for find working days between two dates:

thanks