You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

通过ODBC从SQL Server连接Firebird SQL报错:无法完成网络请求

问题解答

1. 错误原因

问题根源在于Firebird ODBC驱动与你使用的FirebirdClient连接字符串格式不兼容:

  • 你输入的是.NET专属的FirebirdSql.Data.FirebirdClient连接字符串格式,但ODBC驱动有独立的参数规范。其中Connection lifetime、Pooling、MinPoolSize、MaxPoolSize、Packet Size、ServerType这些属性都是ODBC驱动不识别的,直接触发「Invalid connection string attribute」错误。
  • 当驱动解析到大量无效属性时,会忽略DataSource、Port这类有效远程连接参数,最终 fallback 到Firebird本地默认的xnet协议连接,导致出现「Unable to complete network request to host 'xnet://Global\FIREBIRD'」的错误。

2. 免费解决方案

方案一:改用ODBC兼容的连接字符串

替换原连接字符串为Firebird ODBC驱动支持的格式,移除无效属性,调整远程连接参数写法:

DRIVER=Firebird/InterBase(r) driver;
UID=Yano;
PWD=p@ssw0rd;
DBNAME=sql.example.com/3050:MyDatabase;
CHARSET=NONE;
DIALECT=1

关键调整:

  • 用DBNAME统一指定远程地址、端口和数据库,格式为host/port:database
  • 用ODBC标准参数名UID/PWD替代User/Password
  • 删除所有ODBC驱动不支持的属性(Connection lifetime、Pooling等)

方案二:通过ODBC数据源管理器配置DSN

  1. 打开64位ODBC数据源管理器(与你的系统/SSMS位数匹配)
  2. 切换到「系统DSN」标签,点击「添加」,选择Firebird/InterBase(r) driver
  3. 在配置界面填写:
    • 数据库路径/名称:sql.example.com/3050:MyDatabase
    • 用户:Yano
    • 密码:p@ssw0rd
    • 字符集:NONE
    • SQL方言:1
  4. 点击「测试连接」,确认成功后保存DSN
  5. 在SSMS导入向导中,数据源选择「ODBC数据源」,直接选中你创建的DSN即可

方案三:更新Firebird ODBC驱动

如果以上方法无效,安装Firebird官方提供的最新ODBC驱动,旧版本可能存在参数解析的兼容性bug,更新后可解决部分异常。


内容的提问来源于stack exchange,提问作者Yano_of_Queenscastle

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.08 10:35:39