求C++连接oracle 数据库的代码

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了求C++连接oracle 数据库的代码相关的知识,希望对你有一定的参考价值。

参考技术A #include <DbManager.h>
#include <iostream>

using namespace std;

using namespace oracle::occi;

const string sqlString("select empno, ename from employee");

int main(int argc, char **argv)


if (argc != 2)

cerr << "\nUsage: " << argv[0] << " <db-user-name>\n" << endl;
exit(1);


// Initialize OracleServices

DbManager* dbm = NULL;

OracleServices* oras = NULL;

Statement *stmt = NULL;

ResultSet *resultSet = NULL;

try


// Obtain OracleServices object with the default args.

dbm = new DbManager(userName);

oras = dbm->getOracleServices();

// Obtain a connection

Connection * conn = oras->connection();

// Create a statement

stmt = conn->createStatement(sqlString);

int empno;

string ename;

// Execute query to get a resultset

resultSet = stmt->executeQuery();

while (resultSet->next())


empno = resultSet->getInt(1); // get the first column returned by the query;

ename = resultSet->getString(2); // get the second column returned by the query

if (resultSet->isNull(1))

cout << "Employee Number is null... " << endl;

if (resultSet->isNull(2))

cout << "Employee Name is null..." << endl;


cout << empno << "\t" << ename <<endl;



// Close ResultSet and Statement

stmt->closeResultSet(resultSet);

conn->terminateStatement(stmt);

// Close Connection and OCCI Environment

delete dbm;


catch (SQLException& ex)

if (dbm != NULL)

dbm->rollbackActions(ex, stmt, resultSet); // free resources and rollback transaction



return 0;
追问

希望能给出示例源码

本回答被提问者采纳
参考技术B MS 的ODBC 驱动就行了。
不过在处理BLOB 问题的时候 会出现问题

你得到oracle 的官网上下 他的 ODBC 驱动 才可以。
安装后 和普通的ODBC 开发没区别

注意的就是再插入BLOB 对象类型的时候 先要插入一行空的 再进行update希望有所提示,有空到51cto,365testing进一步交流!

求Java 连接Oracle数据库有哪几种方式

参考技术A Sys,它是一个 DBA用户名,具有最大的数据库操作权限,sys 必须以sysdba的身份登录;
System,它也是一个 DBA用户名,权限仅次于 Sys用户,system 以正常身份登录,具有一般操作权限!
DBSNMP 该用户负责Oracle系统的智能代理(Intelligent Agent),该用户的缺省密码也是“DBSNMP”。它具有一个比较危险的系统权限" unlimited tablespace
SYSMAN oracle超级管理员!
参考技术B jdbc是基础,一般会使用连接池管理

以上是关于求C++连接oracle 数据库的代码的主要内容,如果未能解决你的问题,请参考以下文章

求C++连接mysql数据库 并同时进行增删查改的代码 十分感谢

求oracle 数据库高手 围观 此问题: 执行下面代码 报此错误:ora-01722:无效数字

求oracle数据库大神

求.net 连ORACLE数据库 增删改查完整代码 代码 要最简单的

求一个连接oracle数据库的java类和一个测试是不是连接成功的JAVA类

求Java 连接Oracle数据库有哪几种方式