跳转到主要内容
你可以使用此方法连接任何带有 ODBC 驱动程序 的数据库。 设置示例:

设置字段:
tablequery 字段不能同时使用,并且必须声明其中一个。
ClickHouse 会从 ODBC 驱动程序 接收引号符号,并在发送给 driver 的查询中为所有设置加上引号,因此必须按照数据库中的表名大小写正确设置表名。 如果你在使用 Oracle 时遇到编码问题,请参阅相应的 FAQ 条目。

ODBC 字典功能的已知漏洞

通过 ODBC 驱动程序连接到数据库时,可以替换连接参数 Servername。在这种情况下,odbc.ini 中的 USERNAMEPASSWORD 值会被发送到远程服务器,可能导致泄露。
不安全用法示例 下面为 PostgreSQL 配置 unixODBC。/etc/odbc.ini 的内容如下:
如果你随后执行如下查询
ODBC 驱动程序会将 odbc.iniUSERNAMEPASSWORD 的值发送到 some-server.com

连接 PostgreSQL 的示例

Ubuntu 操作系统。 安装 unixODBC 和 PostgreSQL 的 ODBC 驱动程序:
配置 /etc/odbc.ini (如果你是以运行 ClickHouse 的用户身份登录,则使用 ~/.odbc.ini) :
ClickHouse 中的字典配置如下:

你可能需要编辑 odbc.ini,通过 DRIVER=/usr/local/lib/psqlodbcw.so 指定驱动库的完整路径。

连接 MS SQL Server 示例

Ubuntu 操作系统。 安装用于连接 MS SQL 的 ODBC 驱动程序:
配置驱动:
说明:
  • 如需确定某个 SQL Server 版本支持的最早 TDS 版本,请参阅产品文档,或查看 MS-TDS Product Behavior
在 ClickHouse 中配置字典:
最后修改于 2026年7月2日