首页 文章

odbc_connect():SQL错误:[unixODBC] [驱动程序管理器]未找到数据源名称,并且未指定默认驱动程序,SQLConnect中的SQL状态IM002

提问于
浏览
2

我收到了错误

odbc_connect():SQL错误:[unixODBC] [驱动程序管理器]未找到数据源名称,并且未指定默认驱动程序,SQLConnect for Linux服务器中的SQL状态IM002

执行以下命令以从PHP连接sybase .

$db = ADONewConnection('odbc');

$DSN = 'UID=username;PWD=password;EngineName=dbServiceName;AutoStop=No;Integrated=No;Debug=No;DisableMultiRowFetch=No;CommLinks=SharedMemory,TCPIP{};Compress=No;Driver={Adaptive Server Anywhere 9.0}';


$db->Connect($DSN );

我有 installed ODBC drivers with FreeTDS 使用以下命令将Sybase数据库与PHP代码连接起来

  • sudo apt-get install unixodbc

  • sudo apt-get install tdsodbc

  • sudo apt-get install freetds-bin tdsodbc

/etc/odbc.ini 文件

  • Driver = /usr/lib/x86_64-linux-gnu/odbc/libtdsodbc.so

  • Setup = /usr/lib/x86_64-linux-gnu/odbc/libtdsS.so

  • Server = server_name

  • Port = port_number

  • Database = dbname

  • Username = dbusername

  • 密码= dbpassword

freetds.conf 文件

[sybase]
    host=
    port=
    Tds version=

1 回答

  • 0

    如果您使用的是FreeTDS,则需要从 odbcinst.ini 指定驱动程序,通常是FreeTDS . 尝试:

    $DSN = 'UID=username;PWD=password;EngineName=dbServiceName;AutoStop=No;Integrated=No;Debug=No;DisableMultiRowFetch=No;CommLinks=SharedMemory,TCPIP{};Compress=No;Driver={FreeTDS}';
    

相关问题