报错
odbc_connect(): SQL error: [unixODBC][Driver Manager]数据源名没有找到,也没有指定默认驱动程序,SQL状态IM002在SQLConnect for Linux server
当执行以下命令从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 );
我已经安装了ODBC驱动程序与FreeTDS连接Sybase数据库与PHP代码与以下命令
- sudo apt-get install unixodbc sudo apt-get install tdsodbc
- sudo apt-get install freets -bin tdsodbc
/etc/odbc.ini 文件
- Driver =/usr/lib/x86_64-linux-gnu/odbc/libtdsodb .so
- Setup =/usr/lib/x86_64-linux-gnu/odbc/libtdsS.so
- Server = server_name
- Port = port_number
- Database = dbname
- Username = dbusername
- Password = dbpassword
freetds.conf 文件
[sybase]
host=
port=
Tds version=
如果您使用的是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}';