我使用isql就能够连接上
isql -Uuser -Ppassword -SSYBASE_SERV
但是使用程序就不能
memset( szUser, 0x00, 31 );
memset( szPassword, 0x00, 31 );
memset( szServer, 0x00, 31 );
strcpy( szUser, "user " );
strcpy( szPassword, "password " );
strcpy( szServer, "SYBASE_SERV " );
EXEC SQL CONNECT :szUser IDENTIFIED BY :szPassword;
EXEC SQL USE :szServer;
提示这样的错误:
** SQLCODE=(-101188867)
** SQL Server Error
** ct_connect(): directory service layer: internal directory control layer error
: Requested server name not found.
这到底是为什么?
------解决方案--------------------------------------------------------
isql -Uuser -Ppassword -SSYBASE_SERV -i 文本文件名
文本文件名里写你也要执行的代码
------解决方案--------------------------------------------------------
EXEC SQL CONNECT :szUser IDENTIFIED BY :szPassword USING :szServer;
EXEC SQL USE :dbname
...
第二句是数据库名称 不是服务名