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 ="小明\n";
char *job = "总统\n";
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\n\n",msg_len,msg);
}
3、右击proc.pc文件开始编译
编译结果:
哇 编译成功了,那编译后生成的文件在什么地方呢?还记得上面设置outputs属性吗$(IntDir)$(TargetName).c ,到相应的目录下查找
果然在这,然后把这个文件添加到源文件里面,结构如下
然后右击proc.pc文件 编译
这个时候再点击整个项目编译出exe文件
项目build成功
此时生成了相应的exe文件,
点击运行查看数据库连接情况
说明数据库连接成功
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· AI与.NET技术实操系列:基于图像分类模型对图像进行分类
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 25岁的心里话
· 闲置电脑爆改个人服务器(超详细) #公网映射 #Vmware虚拟网络编辑器
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· 零经验选手,Compose 一天开发一款小游戏!
· 一起来玩mcp_server_sqlite,让AI帮你做增删改查!!