firebird - 连接到 Firebird 数据库时出现 BLR 错误
问题描述
我想通过 FlameRobin 连接本地文件夹上的 Firebird 数据库。我可以连接到除一个之外的所有数据库。我收到此数据库的此错误:
偏移量 2801 处的无效请求 BLR 函数 GETUSERINFO 未定义模块名称或找不到入口点。
我找不到此错误的任何资源。这个错误是数据库版本不同造成的吗?
解决方案
该错误意味着您的数据库有一个使用 UDF(用户定义函数)的on connect 触发器,并且它找不到包含该 UDF 代码的库(Windows: .dll
、 Linux: .so
)。
您将需要找出该数据库需要哪个库,并将其安装在正确的位置(默认是udf
Firebird 安装中的目录,但可以在firebird.conf
设置中更改UdfAccess
)。
此错误的另一个原因是使用 Firebird 64 位,而库是 32 位(反之亦然)。您需要确保 Firebird 和库的位数相同。
或者,您可以以 SYSDBA 身份连接到数据库,传递isc_dpb_no_db_triggers
连接属性以禁用该连接的数据库触发器。我不确定你是否可以用 FlameRobin 做到这一点。
推荐阅读
- java - 为服务器上的文件生成下载链接
- java - CompletableFuture - 运行多个 rest 调用抛出 java.util.concurrent.CompletionException
- java - android.speech.tts.TextToSpeech.setLanguage(java.util.Locale)' 在空对象引用上
- python - 如何获取数组中搜索元素的索引并更新该行Python中的最后一个元素
- itext - 使用 iText 在现有 pdf 的每一页中添加 TextField
- python - 提高 U-Net 分割模型的训练精度
- php - 将整个表数据发送到php中的另一个表
- mongodb - 如何从运行在同一主机上的 Kubernetes 集群内部连接到 MongoDB 数据库?
- c# - 在 C# 中,如何使用 `TryAsync` 的实例?
- html - 为什么 HTML 和 Body 标签在我的编辑器中标记为红色?