问题标签 [iodbc]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
sql-server - 使用 FreeTDS 从 MAC 应用程序连接到 MS SQL Server 失败
我正在尝试使用 iODBC 和 FreeTDS 从我的 Mac 应用程序连接到 Microsoft SQL Server。无论我做什么,我都会收到错误消息无法从 FreeTDS 驱动程序连接到数据源。我已经查阅了尽可能多的手册、博客文章和 StackOverflow 问题。
以下是我尝试的故障排除步骤以及有关我的代码的更多详细信息,
从应用程序日志中,
很少有 StackOverflow 帖子建议这是由于 TDS 版本和更改为 8.0 会有所帮助,但它已经设置好了。
当我 ping 服务器时 - 没有数据包丢失。当我在 1433 端口上远程登录服务器时,连接已建立。
使用下面我也可以建立连接,
在此特定帖子中,根据 Max Bolingbroke的评论, 如果使用 SERVER 属性,则 freetds.config 和 odbc.ini 将被忽略。所以我猜配置文件参数没有多大帮助。
任何人都可以为我提供一些指示或任何帮助,以便我可以进一步进行。
macos - 在 OS X 10.9 “ODBC 库 - 标头检查失败”上构建 OTP 18.3
所以我试图在 OS X 10.9 Mavericks 上构建 Erlang/OTP 18.3,并且似乎遇到了找不到 odbc 库/头文件的问题。
第一次尝试跑步时,configure
我收到了以下消息:
我去寻找有关 OS X 上的 ODBC 库的任何信息,并找到了一个较早的问题/答案,其中指出“自从 OS X 10.9 (Mavericks) Apple 停止包含 iODBC SQL 头文件”,这表明这可能是关键问题.
所以我从 iodbc.org 获取了 libiodbc,构建了 OS X 版本,然后再次尝试:
嗯。好的,显然为 OS X 构建会将库/头文件默认放入 /Library/Frameworks 中。也许OTP的配置过程不知道看那里?所以我尝试再次构建 libiodbc,这次使用 --prefix=/usr/local。和:
我可以验证 /usr/local/include 包含 iodbcext.h、iodbcunix.h、isqlext.h、sql.h、sqltypes.h、iodbcinst.h、isql.h、isqltypes.h、odbcinst.h、sqlext.h , sqlucode.h,所以看起来头文件应该是可发现的。
我四处寻找有关 erlang-questions 邮件列表中有关 odbc 和构建的任何早期讨论,并发现一条旧消息表明配置过程有时无法识别 OS X 上的 iodbc 搜索......但快速检查erlang 源代码目录下的 lib/odbc/configure.in似乎显示了该消息中建议的补丁已折叠,这应该不再是问题。
我错过了什么?有没有另一种方法来告诉配置它应该在哪里寻找 libiodbc?还需要什么吗?
做不到这一点——我可以以某种方式调试/更改配置过程吗?
编辑
在@legoscia 的建议下,我偷看了里面lib/odbc/config.log
。里面有很多内容,所以我将链接完整文件而不是发布它,但有两个错误似乎相关:
这很奇怪,因为正如我之前所说,我可以验证 /usr/local/include 是否包含这些文件。我正在使用--with-odbc=/usr/local
. 稍后在 config.log 的Output Variables
标题下,它还指定它 know ODBC_INCLUDE='-I/usr/local/include'
。它似乎知道在哪里看,文件在那个位置,但有些东西看不到它们。
python - 没有 .so 文件的 MacOS 上的 FreeTDS 配置
谁能指出如何使用 FreeTDS 设置与 MS SQL Server 的 ODBC 连接?到目前为止,我在网上找到的所有帖子和项目都需要 .so 文件,根据其文档安装 FreeTDS 时不再生成(或需要)该文件。令我困惑的是,用户文档还显示了使用 libtdsodbc.so 文件的设置。
我确实设法在 Github ( https://github.com/Homebrew/legacy-homebrew/issues/24550 ) 上找到了这个链接,关于手动编译 iODBC for Mac 并让它工作的人,但是在克隆了相应的 Guthub iODBC 源之后我无法在没有错误的情况下编译它。错误 127(这是我得到的)对我来说相当模糊。iODBC 的手动安装以某种方式brew install freetds
找到了生成 libtdsodbc.so 所需的 iODBC 标头。
我假设由于 FreeTDS 不再生成任何 .so(共享对象),它应该在没有它们的情况下运行。
任何帮助是极大的赞赏。
此致,
安德烈。
php - 如何在 MacOsX (el Capitan) 上使用内置 apache 和 php5.5 加载 odbc
我目前正在尝试通过 php 扩展运行 (i)odbc。这三天我一直在搜索,我不知道如何配置 MacOsx 的内置 php5.5 来加载 odbc 扩展。我连接到 odbc 没有问题,只是加载扩展。
你有想法吗?
r - 如何在 macOS Sierra 10.12.4 上安装 RODBC
在 R 3.4.0 中,
在 macOS 10.12.4 上失败。我也RODBC_1.3-15.tar.gz
从 CRAN 下载并尝试过,
在这两种情况下,我都得到“找不到 ODBC 标头 sql.h 和 sqlext.h”。在 OS X Mavericks 上安装 RODBC/ROracle 包中对此的讨论如下:
要解决此问题,您需要下载最新版本的 iODBC (www.iodbc.org),然后解压缩文件并将头文件和库搜索路径设置为放置解压缩包的位置。如果您不知道如何设置搜索路径,您可以将头文件 (
sql.h
和sqlext.h
) 放在/usr/include
目录中,并将libiodbc.a
文件放在/usr/lib
目录中。
我将其下载iodbc-42.5.tar.gz
并解压缩到 RODBC 旁边的目录中,从RODBC_1.3-15.tar.gz
. 可悲的是,我找不到如何设置头文件和库搜索路径,当我尝试将头文件放入时/usr/include
,系统不会让我。
iodbc-42.5/iodbc/README.MACOSX
说,
您首先需要安装最新的 Mac OS X 开发人员包,可以在http://developer.apple.com/tools找到
我想我已经做到了,但我不知道如何检查它。[其实我想我已经做过很多次了:消息ODBC headers sql.h and sqlext.h not found
,从对 的仍然否定响应中消失了一段时间,直到我成功安装并运行install.packages('RODBC', type='source')
后才重新出现。然后我又来了。]port
sudo port install gcc6
ODBC headers sql.h and sqlext.h not found
iodbc-42.5/iodbc/README.MACOSX
继续,
然后,您可以在
mac/iODBCinst
、mac/iODBC
和.mac/iODBCtest
mac/iODBCtestw
我不知道如何找到这些。它进一步继续,
或从终端会话执行以下命令来构建所有框架和演示应用程序:
我做到$ cd mac
了,得到了-bash: cd: mac: No such file or directory
。显然,我需要在mac
这里替换一些东西,但我不知道是什么。???
谢谢。
python-3.x - 如何在 macOS 中使用指向 iODBC 的链接构建 pyodbc?
在Pyodbc 驱动程序中:如何在 macOS 中指定其位置?, TallTed建议打开问题来解释以下内容
使用指向 iODBC 的链接构建 pyodbc(不是 UnixODBC 的默认值,这对于 macOS 并不典型)。
所以现在重点——</p>
如何使用指向 iODBC 的链接构建 pyodbc(不是 UnixODBC 的默认值,这对于 macOS 来说不是典型的)?
mysql - MySQL ODBC 8.0 Unicode 驱动程序连接错误 [H000]
我无法使用 unixODBC 作为在 Mac OS 上运行的底层驱动程序连接到 MySQL ODBC 8.0 Unicode 驱动程序。
我在 python 3.6 上使用 pyodbc 包。当我使用 ANSI 驱动程序时一切正常,但 Unicode 驱动程序不起作用。
这是我的 Mac 上安装的可用驱动程序。
['MySQL ODBC 8.0 ANSI 驱动程序'、'MySQL ODBC 8.0 Unicode 驱动程序'、'ODBC 驱动程序'、'ODBC 连接池']
我的连接字符串
self.connection_string = 'Driver={MySQL ODBC 8.0 Unicode Driver};Server=localhost;Database=db_name;Uid=root;Pwd=P@kistan1;charset=UTF8;Option=3;'
而 pyodbc.Error 检测到的错误是
('H000', '[H000] [ (0) (SQLDriverConnect)')
我能够使用 iODBCAdmin 建立连接,它告诉我驱动程序是正确的。
mysql - myodbc-installer 列出数据源,但 iodbctest 显示没有 DSN
我按照此处提供的注册驱动程序和数据源的说明进行操作:“从二进制 Tarball 发行版安装连接器/ODBC”
在意识到我必须在运行时使用 sudomyodbc-installer
之后,我可以成功地让我安装的驱动程序显示为已注册,其中:
当您myodbc-installer
不带参数运行时,它会列出命令行开关并告诉您如何注册数据源。它给出的例子是:
这与名称不完全匹配(它是MySQL ODBC 8.0 Driver
,不是MySQL ODBC 8.0 Unicode Driver
......ASCII驱动程序只是MySQL ODBC 8.0
)
但是使用适当的驱动程序名称,我设法让安装程序成功注册了一个数据源,它可以被列出:
但是我尝试使用此 DSN 的程序无法正常工作。所以我想我会寻找一些更简单的案例来尝试。该iodbctest
程序似乎是一个不错的候选者,因为它具有您点击的功能?
并列出了数据源。但是我什么都没有...
由于sudo
帮助安装过程,我想我会尝试sudo iodbctest
,但这并没有帮助。