PROC简单的用例--VC连接ORACLE

操作系统:windows 7

数据库版本号:oracle 10g

VS版本号:VS2010

前言:连接ORACLE有许多方法,这里只PROC外壳,说明如何连接oracle,有事吗,希望你告诉我指出,一起学习。

一、安装oracle 10g相应的client版本号。

  注意事项:做好客户配置,以本机为例:D:\oracle\product\10.2.0\client_2\NETWORK\ADMIN\tnsnames.ora文件为

# tnsnames.ora Network Configuration File: d:\oracle\product\10.2.0\client_2\network\admin\tnsnames.ora

# Generated by Oracle configuration tools.

DB_DEMO =

(DESCRIPTION =

(ADDRESS_LIST =

(ADDRESS = (PROTOCOL = TCP)(HOST = 10.1.8.222)(PORT = 1521))

)

(CONNECT_DATA =

(SERVICE_NAME = db_demo)

)

)

host:ORACLE服务端IP地址;PORT:ORACLE服务端port号,默觉得1521;SERVICE_NAME:数据库名称。

二、建立oracle.pc文件,文件内容为:

// oracle.cpp : Defines the entry point for the console application.
//

#include <stdio.h>
#include <stdlib.h>

#include <process.h>
#include <errno.h> 

//EXEC SQL INCLUDE SQLCA;
#include <sqlca.h>

int main(int argc, char* argv[])
{
	EXEC SQL BEGIN DECLARE SECTION;
	VARCHAR myusername[20], mypassword[20], myserver[20];
	EXEC SQL END DECLARE SECTION;

	printf( "\n请输入用户名:" );
	gets( (char*)myusername.arr );
	myusername.len = (unsigned short) strlen( (char*)myusername.arr );
	printf( "\n请输入口令:" );
	gets( (char*)mypassword.arr );
	mypassword.len = (unsigned short) strlen( (char*)mypassword.arr );
	printf("\n请输入服务器名:");
	gets( (char*)myserver.arr );
	myserver.len = (unsigned short) strlen( (char*)myserver.arr );
	EXEC SQL CONNECT :myusername IDENTIFIED BY :mypassword USING :myserver;

	if(sqlca.sqlcode < 0 )
		printf (" \n用户%s成功地连接到了服务器%s上。\n" , myusername.arr, myserver.arr);
	else
		printf("\n%ld,%s\n", sqlca.sqlcode,(char *)sqlca.sqlerrm.sqlerrmc);
	return 0;
}

三、找到ORACLE安装文件夹下PROC.exe文件。本机文件夹为:D:\oracle\product\10.2.0\client_2\BIN,将oracle.pc文件复制到些文件夹下,执行cmd命令行,cd到此文件夹下,执行proc.exe oracle.pc oracle.cpp命令,会在当前文件夹下生成oracle.cpp文件。

四、启动VS2010,建立空控件台的oracle项目。下面要注意了,做好VS项目配置。将oracle.cpp的拷贝至oracle文件夹下,加入进project。

然后做下图的配置:

1、数据库include头文件路径配置

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvaGVpaGVpMzY=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" >

2、数据库LIB文件文件夹配置

3、数据库依赖LIB文件配置

五、删除之前自己主动生成的oracle.cpp文件,将oracle.cpp加入进oracle项目,编译链接。可能会出现下面几个错误:

1、提示未include "stdafx.h"。解决方式:在oracle.cpp開始部位加入#include "stdafx.h"

2、提示 error LNK2001: unresolved external symbol "void __cdecl sqlcxt(void * *,unsigned int *,struct sqlexd *,struct sqlcxp const *)" ([email protected]@[email protected]@[email protected]@@Z)错误。解决方式:extern 
void sqlcxt (void **, unsigned int *。struct sqlexd *, const struct sqlcxp *);在extern后加上"C"编译就可以

3、其他一些问题。就细致查看配置的include、lib路径是否正确。以及lib文件名称是否正确。

六、执行生成的oracle.exe。截图例如以下:



时间: 2024-10-27 17:30:11

PROC简单的用例--VC连接ORACLE的相关文章

[转]PROC简单使用用例--VC连接ORACLE

操作系统:windows 7 数据库版本:oracle 10g VS版本:VS2010 前言:连接ORACLE的方式有很多,此处仅以PROC为例,说明如何连接oracle,有不妥之处,望诸位看官指出,学习共进. 一.安装oracle 10g对应的客户端版本. 注意事项:做好客户配置,以本机为例:D:\oracle\product\10.2.0\client_2\NETWORK\ADMIN\tnsnames.ora文件为 # tnsnames.ora Network Configuration F

PROC简单使用用例--VC连接ORACLE

操作系统:windows 7 数据库版本:oracle 10g VS版本:VS2010 前言:连接ORACLE的方式有很多,此处仅以PROC为例,说明如何连接oracle,有不妥之处,望诸位看官指出,学习共进. 一.安装oracle 10g对应的客户端版本. 注意事项:做好客户配置,以本机为例:D:\oracle\product\10.2.0\client_2\NETWORK\ADMIN\tnsnames.ora文件为 # tnsnames.ora Network Configuration F

vc 连接oracle数据库

忙活了几天,终于用vc连接到了oracle数据库(32位),虽然只是连接到本机的.有一种豁然开朗的感觉. 刚开始的时候,各种连不上,我就把关于oracle的软件全删了.我不是正规卸载的,而是把相关文件夹都删了.还有注册表项.(见本文末尾) 重新安装了11g,要完整版,不是express的. pszPwd-密码   ,pszUser-用户, pszServer-数据源(我的是orcl) [cpp] view plaincopy CString cstrSql = "Provider=OraOLED

Navicat Premium 连接 Oracle 数据库

Navicat Premium是一个可多重连接的数据库管理工具,它可让你以单一程序同時连接到 MySQL.SQLite.Oracle 及 PostgreSQL 数据库,让管理不同类型的数据库更加方便.最重要的是它不用装Oracle客户端.下边简单介绍一下Navicat Premium连接oracle客户端的方法. 如果你的机器已经装有 Oracle 数据库的话,那很简单,Navicat Premium可以直接连接到 Oracle . 如果没装,那 Navicat 会提示你需要安装 Oracle

一则简单演示样例看Oracle的“无私”健壮性

Oracle的强大之处就在于他能总帮助让你选择正确的运行计划,即使你给了它错误的指示. 实验: 1. 创建測试表: watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvYmlzYWw=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" > 收集统计信息: 创建B树索引: 2. 运行select id from tbl_plan;查看它的运行计划: 由于创建了

简单的JDBC连接oracle数据库例子

java连接Oracle数据库 JDBC(Java Data Base Connectivity,java数据库连接),那么我们该如何用java进行数据库的连接呢. import java.sql.Connection; import java.sql.DriverManager; import java.sql.PreparedStatement; import java.sql.ResultSet; import java.sql.SQLException; public class JDB

plsql连接oracle客户端(简单,实用方案)附件

plsql 连接 oracle 需要在本地安装oracle客户端(附件中下载): 将文件下载下来后,放到任意目录,例如 D:\instantclient_10_2 修改 tnsnames.ora 文件,第一行填写要链接的数据库名,第4行填写数据库的IP,第7行填写SID 配置环境变量TNS_ADMIN D:\instantclient_10_2\ ,在path中添加 %TNS_ADMIN%,这个不能少,否则配置的环境变量排不上用场,这个曾经困扰了我很久 安装plsql,过程略 打开plsql,要

win7 64位系统 PB连接oracle数据库出现“oracle library oci.dll could not be loaded”问题的解决方法

今天与大家分享一个自己的学习笔记,希望能给遇到同样问题的人带来帮助. 不知道大家在win7 64位系统下用 PB连接oracle数据库时,是否遇到过“oracle library oci.dll could not be loaded”问题. 今天,在win7 64位系统下用 PB连接oracle数据库时,一直出现上述错误,在百度上找了很久,都没有找到一个完整的解决方案,咨询了很多人,(他们都说是我的PB和oracle没装好,但我装的时候没出现任何问题,一切都很顺利,而且PB和oracle都能正

如何用PL/SQL Developer连接Oracle数据库

之前因为项目的原因需要使用Oracle数据库,由于时间有限没办法从基础开始学习,而且oracle操作的命令界面又太不友好,于是就找到了PL/SQL Developer这个很好用的软件来间接使用数据库. 下面简单介绍一下如何用这个软件连接Oracle数据库. 第一步 安装Oracle Database和PL/SQL Developer 这一步网上有很多的教程就不详细介绍.Oracle可以直接到官网去下载,在安装中注意几个问题就行: 1.一定要记住自己全局数据库名字和口令,这个在后面连接的时候很重要