oracle odbc 08004,ODBC API 连接ORACLE时 报 08004 数据源已拒绝连接错误 ORA-12154

将能够成功在控制台环境中运行的SQL连接代码移植到DLL工程后,在调试DLL时遇到连接数据库失败的问题。尽管连接句柄分配成功,但无法正常连接。可能的原因包括环境配置、ODBC设置或DLL与主机应用程序之间的兼容性问题。
摘要由CSDN通过智能技术生成

SQLRETURN rn;

SQLHENV henv;

SQLHDBC hdbc;

rn =::SQLAllocEnv(&henv);

printf(“get henv success!\n“);

rn =SQLSetEnvAttr(henv,SQL_ATTR_ODBC_VERSION,(void*)SQL_OV_ODBC3,0);

rn =SQLSetEnvAttr(henv,SQL_ATTR_OUTPUT_NTS,(void*)SQL_TRUE,0);

rn = SQLAllocConnect(henv,&hdbc);

SQLPOINTER po = “SQL_FALSE“;

SQLCHAR conDSN[] = “quick“;

SQLCHAR conUID[] = “quick“;

SQLCHAR conPWD[] = “quick“;

SQLRETURN ss= SQLConnectA(hdbc,conDSN, SQL_NTS,conUID,SQL_NTS,conPWD,SQL_NTS);

SQLCHAR msg1[5];

SQLINTEGER msg2[1024];

SQLCHAR msg3[1024];

SQLSMALLINT len = 1024;

SQLSMALLINT *p = &len;

SQLError(henv,hdbc,SQL_NULL_HANDLE,msg1,msg2,msg3,len,p);

printf(“%s\n“,msg1);

printf(“%s\n“,msg2);

printf(“%s\n“,msg3);

以上代码在控制台中已连接成功,

但是把它换到DLL的工程中时,调试这个DLL时就连接不上了.连接语句句柄也分配成功.但就是连接不上数据库.

欢迎解答,

人打赏

0人 点赞

主帖获得的天涯分:0

举报 |

楼主

|

楼主发言:1次 发图:0张 | 添加到话题 |

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值