visual studio2015 搭建pro*c开发编译环境

关于pro*c是什么,这里不做介绍,主要说明如何在vs2015里面开发pro*c程序,并编译exe执行文件

一、vs2015环境配置

1、新建一个空的vc++项目,如下图

2、右击项目属性,添加相关的头文件目录和lib文件目录

选择vc++目录选项,主要添加的有三个地方,如下图

头文件添加,如下图两个,注意要根据自己oracle实际目录,但目录后半部分都一样

lib文件添加

 因为预编译使用到oracle的proc.exe工具,所以还要进行下图添加

 

这个路径就是你的proc.exe文件所在的目录

3、添加linker文件

添加orasql11.lib文件

到此vs2015环境搭建完成

二、在项目添加文件编写代码

1、

右击源文件 添加新文件 选择txt 命名问proc.pc,添加完后如下图

2、右击proc.pc文件

item type 选择custom build tool ,然后点击应用,出现下图

在commandline填写proc $(TargetName) ;outputs:$(IntDir)$(TargetName).c 

接下来就是激动的时刻了,在proc.pc文件里面开始编写pro*c代码

写个连接数据库的代码:

#include <stdio.h>
#include <string.h>
#include <sqlca.h>
void sql_error();
int main()
{
EXEC SQL BEGIN DECLARE SECTION;
char *username = "SCOTT";
char *password = "123456";
int empno = 12;
char *ename ="小明 ";
char *job = "总统 ";
float sal = 80000;
int deptno = 30;

/*char SQLSTATE[6];*/
EXEC SQL END DECLARE SECTION;
exec sql whenever sqlerror do sql_error();

EXEC SQL CONNECT :username IDENTIFIED BY :password;
exec sql insert into emp(empno,ename,job,sal,deptno)values(:empno,:ename,:job,:sal,:deptno);
printf(sqlca.sqlerrm.sqlerrmc);
/*exec sql delete emp where empno = 12;*/
EXEC SQL COMMIT WORK RELEASE;
_getch();
}
void sql_error()
{
char msg[200];
size_t buf_len,msg_len;
buf_len = sizeof(msg);
sqlglm(msg,&buf_len,&msg_len);
if(msg_len > buf_len)
msg_len = buf_len;
printf("%.*s ",msg_len,msg);
}

3、右击proc.pc文件开始编译

编译结果:

哇 编译成功了,那编译后生成的文件在什么地方呢?还记得上面设置outputs属性吗$(IntDir)$(TargetName).c ,到相应的目录下查找

 果然在这,然后把这个文件添加到源文件里面,结构如下

然后右击proc.pc文件 编译

这个时候再点击整个项目编译出exe文件

项目build成功

此时生成了相应的exe文件,

 

 点击运行查看数据库连接情况

说明数据库连接成功

原文地址:https://www.cnblogs.com/tianmochou/p/11978070.html