您的位置:首页 > 数据库 > Oracle

VC6 C/CPP操作ORACLE数据库 clilib方案

2016-02-02 15:53 429 查看
//VC6 ORACLE HA-Instant Client-v11.2.0.3.0-x86.rar  ocilib-4.2.0-windows.zip

#include "stdafx.h"

#include "ocilib.h"

#define OCI_CHARSET_ANSI

#ifdef _MSC_VER

#if defined(OCI_CHARSET_WIDE)

#pragma comment(lib, "ocilibw.lib")

#elif defined(OCI_CHARSET_ANSI)

#pragma comment(lib, "ociliba.lib")

#endif

#endif

#include <iostream>

#include <fstream>

#include <iomanip>

#include <sstream>

int test(void)

{

OCI_Connection *cn;

OCI_Statement *st;

OCI_Resultset *rs;

//要安装ORACLE Instant Client OCI_Initialize第二个参数可指令此目录

// char *home="D:\\Program Files\\Oracle\\Instant Client\\BIN";

if (!OCI_Initialize(NULL, NULL, OCI_ENV_DEFAULT | OCI_ENV_CONTEXT)){

printf("OCI_Initialize failure\n");

return EXIT_FAILURE;

}

cn = OCI_ConnectionCreate("192.168.1.7/ORCL", "user", "passwd", OCI_SESSION_DEFAULT);

printf("Server major version : %i\n", OCI_GetServerMajorVersion(cn));

printf("Server minor version : %i\n", OCI_GetServerMinorVersion(cn));

printf("Server revision version : %i\n\n", OCI_GetServerRevisionVersion(cn));

printf("Connection version : %i\n\n", OCI_GetVersionConnection(cn));

 st = OCI_StatementCreate(cn);

OCI_ExecuteStmt(st, "select table_name from all_tables where owner='RX_DATASERVER'");

rs = OCI_GetResultset(st);

while (OCI_FetchNext(rs))

printf("code: %i, name %s\n", OCI_GetInt(rs, 0) , OCI_GetString(rs, 1));

printf("\n%d row(s) fetched\n", OCI_GetRowCount(rs));

OCI_Cleanup();

return EXIT_SUCCESS;

}

int main(int argc, char* argv[])

{

printf("Hello World!\n");

test();

getchar();

return 0;

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: