当前位置: 代码迷 >> Sybase >> 为什么isql能够连接,程序却不行,该怎么处理
  详细解决方案

为什么isql能够连接,程序却不行,该怎么处理

热度:9896   发布时间:2013-02-26 00:00:00.0
为什么isql能够连接,程序却不行
我使用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

...
第二句是数据库名称 不是服务名