odbc - 如何为 UnixODBC 配置默认驱动程序?
问题描述
如果连接未指定驱动程序,我想配置我的odbc.ini
和odbcinst.ini
文件以允许使用默认驱动程序。我假设在未指定驱动程序时可能会出现常见错误消息:
[unixODBC][Driver Manager]Data source name not found, and no default driver specified (SQL-IM002)
但是我的 DuckDuckGo-foo 让我失望了。我尝试设置[DEFAULT]
一个odbc.ini
:
[DEFAULT]
Driver=Snowflake
但仍然出现错误(由于配置的其余部分,“Snowflake”是一个有效的驱动程序,当我指定它时可以工作。)我也尝试添加一个[DEFAULT]
部分odbcinst.ini
,但它没有任何区别。
那么如何指定一个默认的 UnixODBC 驱动程序呢?
解决方案
根据对@TallTed 的拉取请求的讨论,我得出的结论是,尽管我认为@TallTed 正确地声明了ODBC 默认驱动程序子键,但无法在 unixODBC 配置文件中配置默认驱动程序在他们的回答中解释。也许在未来,但至少现在,我想我只是误解了错误信息的含义:
Data source name not found, and no default driver specified
我一直假设这意味着主机上没有配置默认驱动程序。但我现在想,它的实际意思可能是“在 URL 中找不到 DSN,也没有Driver
可依赖的参数”。IOW,Driver
如果找不到 DSN,则参数指定默认驱动程序。
这种解释与 PR 中讨论的结果一致。这有点令人失望,但我认为可以通过改进的错误消息或至少某种文档更新来解释如何指定默认驱动程序来修复它。
推荐阅读
- javascript - 将空值转换为 0
- multithreading - 如何对 bash 代理检查器进行多线程处理?
- sql-server - 如何确保执行所有 SQL 更新
- sql - 基于映射表替换 XML 列中的多个值
- laravel - Laravel 5 - 定义模型之间的两种关系
- android - 如何在Android中将两个双打乘以双打?
- mql5 - MQL5 迭代结构
- django-models - 使用 Django ORM 连接两个以上的数据库,一个数据库是遗留数据库,无需迁移到应用程序中
- lxml - 即使在使用 pip 和 pip3 安装 lxml 后,Google Colab 中的 Python lxml 错误
- python - Python如何在打印元组列表时删除括号?