驱动数字化 质变

从权威的技术洞察,到精准的软硬配置,为企业的每一次转型提供决策支持。

中间件与驱动
FreeTDS / UnixODBC
厂商/来源: 开源社区 (LGPL)
核心功能: “Linux 与 Windows 的破冰船”。当你的 Linux 边缘网关需要向工厂里那台跑着 SQL Server 2000 的老掉牙服务器写数据时,这是唯一的救星。
适用场景Linux 程序读写 Microsoft SQL Server、Sybase 数据库、遗留 MES 系统对接
架构支持Linux (任何发行版)
核心价值TDS 协议实现:微软的 SQL Server 使用 TDS 协议。微软官方虽然提供了 msodbcsql 驱动,但在 ARM (树莓派/RK3588) 或老旧 Linux 上往往装不上(glibc 版本依赖)。FreeTDS 是纯 C 编写,哪里都能编译运行
对接情报

配置层级

 1. freetds.conf: 定义服务器 IP 和 TDS 版本 (如 7.0/7.4)。

 2. odbc.ini: 定义 DSN (数据源名称)。<br> 3. 代码: connect("DSN=MyServer;UID=sa;PWD=...")

避坑指南

[乱码之源]

 1. TDS 版本:连接 SQL Server 2000 必须用 tds version = 7.0,连接 2008+ 用 7.2 或 7.4。选错版本会导致连接被重置

 2. 中文乱码:Linux 默认是 UTF-8,而老旧 SQL Server 往往是 GBK (CP936)。对策:在 freetds.conf 中显式配置 client charset = UTF-8,它会自动转码。如果还不升效,需要在连接字符串中强指 Charset=GBK

推荐搭配[Python pyodbc] [Qt SQL] [Microsoft SQL Server]