occi 连接数据库createconnection的问题

我来凑热闹兔 2014-05-29 04:54:42
因为工作需要,初次接触oracle occi。有以下疑问,希望各位能帮忙看下?
像下面这样的 (3个参数):

sprintf(ConnBuf,"Provider=OraOLEDB.Oracle.1;Password=%s;Persist Security Info=True;User ID=%s;Data Source=%s",pwd,usr,db);
try
{
cn->Open(ConnBuf, strMissing, "",adConnectUnspecified);

}

用occi可以这样:

con = env->createConncetion(usr, pwd, db);



但是像这样的(4个参数) 怎么做啊

sprintf(ConnBuf,"Provider=OraOLEDB.Oracle.1;Data Source=%s;"
"Initial Catalog=%s;User Id=%s;Password=%s;", sv,db,usr,pwd);
try
{
cn->Open(ConnBuf, strMissing, "",adConnectUnspecified);

}


看occi文档(10G) 结果更不明白了?怎么只有2个参数?还是说应为版本不同啊?
或者谁能给我一份更详细的文档吗 我是11G的
...全文
386 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
我来凑热闹兔 2014-06-03
  • 打赏
  • 举报
回复
引用 4 楼 wqkjj 的回复:
还有个问题 occi中有 movefirst、movelast这样的函数吗 -------------------------------------------------------------------------- 没有。只有ResultSet->next()向后逐行遍历 movefirst可以重新执行获取结果集获得等效结果 movelast没有办法,只有逐行遍历。
又有个问题 ,像这种 str=(LPCSTR)(_bstr_t)rs->Fields->GetItem(pitem)->Value; Occi怎么来实现啊
我来凑热闹兔 2014-05-30
  • 打赏
  • 举报
回复
引用 2 楼 wqkjj 的回复:
哦,前面看错了。 你那个是ODBC/JDBC的联接方式 OCCI里面不需要第一个参数:指定驱动程序 第二个参数为数据源,也不需要。 conn = env->createConnection (user, passwd, db); 第三个参数为Oracle网络服务名称,对应为tnsnames.ora中一条网络服务配置的名称。比如下面的 linux241 LINUX241 = (DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.108.241)(PORT = 1521)) (CONNECT_DATA = (SERVER = DEDICATED) (SERVICE_NAME = orcl) ) )
还有个问题 occi中有 movefirst、movelast这样的函数吗
wqkjj 2014-05-30
  • 打赏
  • 举报
回复
还有个问题 occi中有 movefirst、movelast这样的函数吗 -------------------------------------------------------------------------- 没有。只有ResultSet->next()向后逐行遍历 movefirst可以重新执行获取结果集获得等效结果 movelast没有办法,只有逐行遍历。
wqkjj 2014-05-30
  • 打赏
  • 举报
回复
哦,前面看错了。 你那个是ODBC/JDBC的联接方式 OCCI里面不需要第一个参数:指定驱动程序 第二个参数为数据源,也不需要。 conn = env->createConnection (user, passwd, db); 第三个参数为Oracle网络服务名称,对应为tnsnames.ora中一条网络服务配置的名称。比如下面的 linux241 LINUX241 = (DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.108.241)(PORT = 1521)) (CONNECT_DATA = (SERVER = DEDICATED) (SERVICE_NAME = orcl) ) )
wqkjj 2014-05-30
  • 打赏
  • 举报
回复
来自Oracle自己的例子 #include <occi.h> using namespace oracle::occi; Environment *env; Connection *conn; env = Environment::createEnvironment (Environment::OBJECT); conn = env->createConnection (user, passwd, db);

17,086

社区成员

发帖
与我相关
我的任务
社区描述
Oracle开发相关技术讨论
社区管理员
  • 开发
  • Lucifer三思而后行
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧