我在 Ubuntu wheezy 64 位上使用 Perl 5.14.2。
我正在尝试连接到安装在 Windows 2008 机器上的 Pervasive SQL server v9.5。
我测试了与 isql 的连接,它工作正常,我使用以下命令进行了测试:
isql -v <db_name>
我使用从 cpan 安装的 DBD:ODBC v1.39(最新版本)perl 模块。
我正在使用以下命令连接到 sql server:
use DBI;
my $db = DBI->connect('dbi:ODBC:Moked');
Moked 是在 odbc.ini 中的 unixodbc v2.2.14 中定义的连接名称。
/etc/odbc.ini
[Moked]
Driver=PERVASIVE_ODBC
Description=Pervasive ODBC Interface: Moked
ServerName=<ip>:<port>
DBQ=MIDA
UID=
PWD=
OpenMode=0
PvTranslate=
当我尝试使用上面显示的命令连接时,我收到错误 SQL-HY001,通过谷歌搜索我了解到它与内存分配有关,通常人们在查询时而不是在尝试连接时得到这些/
似乎 DBI 确实识别了连接,因为如果我键入不同的名称,例如“Moked2”,我会收到错误 SQL-IM002。
有任何想法吗?如何进一步调试此问题?任何有关该问题的信息将不胜感激。
谢谢!