社区
Oracle
帖子详情
在linux(或者Unix下)如何用c语言操作数据库
lao_shan
2004-11-21 08:49:23
是否有这样的库可以用?
...全文
169
5
打赏
收藏
在linux(或者Unix下)如何用c语言操作数据库
是否有这样的库可以用?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
5 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
lao_shan
2004-12-06
打赏
举报
回复
有点头绪了。谢谢各位
imperman
2004-11-22
打赏
举报
回复
到oracle或sqlserver的目录下搜索*.c就找到了,很简单的,看着照猫画虎来一个就会了
LGQDUCKY
2004-11-22
打赏
举报
回复
http://chinaunix.net/jh/19/72576.html
http://chinaunix.net/jh/19/80950.html
superlcj
2004-11-22
打赏
举报
回复
装一下 proc*c 工具
下面有一下很简单的例子
//////在vc中编译时加载oraSQL8.lib文件
#pragma comment(lib,"oraSQL8.lib")
#include "stdio.h"
#include "string.h"
#include "stdlib.h"
#include "dos.h"
EXEC SQL INCLUDE SQLCA;
//////////数据库联接
int Ora_conn()
{
EXEC SQL BEGIN DECLARE SECTION;
VARCHAR usr[20],pass[20],serv[20];
EXEC SQL END DECLARE SECTION;
EXEC SQL WHENEVER SQLERROR GOTO sqlerr;
strcpy(usr.arr,"lcj");
usr.len=(unsigned short)strlen((char*)usr.arr);
strcpy(pass.arr,"lcj");
pass.len=(unsigned short)strlen((char*)pass.arr);
strcpy(serv.arr,"zlodb");
serv.len=(unsigned short)strlen((char*)serv.arr);
EXEC SQL CONNECT :usr IDENTIFIED BY :pass USING :serv;
printf("Connect!\n");
return 1;
sqlerr:
EXEC SQL WHENEVER SQLERROR CONTINUE;
printf("%s\n",sqlca.sqlerrm.sqlerrmc);
return 0;
}
/////调用存储过程
/*
call_p(userid)
{
EXEC SQL BEGIN DECLARE SECTION;
char userid_p[10];
EXEC SQL END DECLARE SECTION;
strcpy(userid_p,userid);
EXEC SQL EXECUTE
BEGIN
prtest(:userid_p,'124','1234');
END;
END-EXEC;
}
*/
void main()
{
char pathstring[20];
char filecontent[200];
int total=0;
EXEC SQL BEGIN DECLARE SECTION; /*sql中用到的变量*/
char s_mobile[12],s_mscontent[160],s_sendtype[20],s_destmobile[12],s_rowid[18];
char s_mstime[20];
int conn;
EXEC SQL END DECLARE SECTION;
conn=Ora_conn();
if (conn==1)
{
while(1)
{
EXEC SQL WHENEVER NOT FOUND GOTO notfoundall;
EXEC SQL DECLARE c_ms_temp CURSOR FOR SELECT MOBILE,MSCONTENT,SENDTYPE,DESTMOBILE,MSTIME,ROWID FROM MS_TEMP;
EXEC SQL OPEN c_ms_temp;
while(1)
{
EXEC SQL FETCH c_ms_temp INTO :s_mobile,:s_mscontent,:s_sendtype,:s_destmobile,:s_mstime,:s_rowid;
if( sqlca.sqlcode == 1403)
{
break;
}
//从ms_bf移到ms中
EXEC SQL INSERT INTO MS(MOBILE,MSCONTENT,SENDTYPE,DESTMOBILE,MSTIME) VALUES(:s_mobile,:s_mscontent,:s_sendtype,:s_destmobile,:s_mstime);
//对上行表加入log表中
EXEC SQL INSERT INTO LOG VALUES(logseq,nextval,:s_mobile,:s_destmobile,sysdate,'',s_mscontent,'上行表');
EXEC SQL DELETE FROM MS_TEMP WHERE ROWID=:s_rowid;
EXEC SQL COMMIT;
//total=total+1;
//printf("%s\t\t%s\t%s\t\n",userid,username,birthday);
}
continue;
notfoundall:
if (total==0)
{
printf("\n没有找到用户信息!\n\n\n");
}
else
{
printf("\n共有%d条用户信息!\n\n\n",total);
}
printf("处理完成!!!");
delay(5000);
printf("已经delay 5秒!!!!");
}
}
else{
printf("数据库联接失败!!!!");
}
EXEC SQL COMMIT WORK RELEASE;
}
tyrone98
2004-11-21
打赏
举报
回复
PROC*C oracle下有sample的
UNIX
平台下
C语言
高级编程指南
由于
UNIX
具有技术成熟、结构简练、可靠性高、可移植性好、可
操作
性强、网络和
数据库
功能强、伸缩性突出和开放性好等特色,可满足各行各业的实际需要,特别能满足企业重要业务的需要,已经成为主要的工作站平台和重要...
购物系统(
Linux
下使用
C语言
,使用中间件)
购物系统(
Linux
下使用
C语言
,使用中间件),跨平台,基于
UNIX
Socket和MySQL
数据库
,设计一个交易型中间件系统。
Linux
系统设计-
linux
环境下shell和
C语言
分别开发学生管理系统
它继承了
Unix
以网络为核心的设计思想,是一个性能稳定的多用户网络
操作
系统,
Linux
是许多企业和服务提供商的首选
操作
系统,用于部署Web服务器、
数据库
服务器、邮件服务器等。
Linux
系统具有高效的网络功能和稳定的...
Linux
系统设计-
Linux
下用
C语言
实现学生信息管理系统
它继承了
Unix
以网络为核心的设计思想,是一个性能稳定的多用户网络
操作
系统,
Linux
是许多企业和服务提供商的首选
操作
系统,用于部署Web服务器、
数据库
服务器、邮件服务器等。
Linux
系统具有高效的网络功能和稳定的...
Linux
系统设计-
Linux
下
C语言
实现即时通讯系统
它继承了
Unix
以网络为核心的设计思想,是一个性能稳定的多用户网络
操作
系统,
Linux
是许多企业和服务提供商的首选
操作
系统,用于部署Web服务器、
数据库
服务器、邮件服务器等。
Linux
系统具有高效的网络功能和稳定的...
Oracle
17,082
社区成员
55,236
社区内容
发帖
与我相关
我的任务
Oracle
Oracle开发相关技术讨论
复制链接
扫一扫
分享
社区描述
Oracle开发相关技术讨论
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章