当前位置: 代码迷 >> C语言 >> [求助]求C语言之连接数据库的程序例子?
  详细解决方案

[求助]求C语言之连接数据库的程序例子?

热度:410   发布时间:2007-03-29 23:57:20.0
[求助]求C语言之连接数据库的程序例子?
谁能指导下?

[此贴子已经被作者于2007-7-3 23:17:49编辑过]


搜索更多相关的解决方案: C语言  数据库  例子  

----------------解决方案--------------------------------------------------------

要命,这个不算是基础语句了好不好。看你连接的是什么数据库,搞不好还要写驱动。俺也不懂啊,不过用VB拉什么的就比较容易拉


----------------解决方案--------------------------------------------------------

想学习一下啊,斑竹能指导下吗


----------------解决方案--------------------------------------------------------
自己顶个

[此贴子已经被作者于2007-7-3 23:18:22编辑过]



----------------解决方案--------------------------------------------------------

俺也给你狂定定!!!!!!!!!!!!!!!


----------------解决方案--------------------------------------------------------
你看SQL2000的帮助文档,里面有很多用ODBC操作数据库的
----------------解决方案--------------------------------------------------------

sqlite 相应的库函数支持吧,才可以连接的...


http://www.sqlite.org/


自己参考资料..


----------------解决方案--------------------------------------------------------

我用的是informix数据库,直接编译 *.ec文件,数据库语句直接嵌入到C程序中.
不过需要有UNIX环境和informix数据库,首先编辑*.ec文件例如
/********************test.ec************************/
#include <stdio.h>
#include <string.h>
#include <stdlib.h>
#include <curses.h>
$include sqlca;

$struct test
{
char num[7];
char mc[31];
};

void i_xy(int x,int y) /* UNIX中光标定位,windows不可以 */
{
printf("%c%c%d;%dH",'\033','[',x,y);
}

int main()
{
EXEC SQL begin declare section; /* 定义数据库变量 */
struct test stTest;
char inum[7];
EXEC SQL end declare section;

$database testdb; /* 打开数据库 */

memset(&stTest,0,sizeof(struct test));
memset(inum,0,sizeof(inum));

system("clear");
i_xy(7,30);
printf("请输入交易码:[ ]");
i_xy(7,44);
scanf("%s",&inum);
/* 定义游标用于查找p_test数据表中和inum匹配的记录 */
EXEC SQL declare test_cur cursor for select * from p_test where num matches :inum;

EXEC SQL open test_cur;
EXEC SQL fetch test_cur into :stTest; /* 从游标中取出一条记录保存到stTest中 */

while(sqlca.sqlcode == 0) /* 输出所有符合条件的记录 */
{
printf("\n\t num=[%s] mc=[%s]",stTest.num,stTest.mc);
memset(&stTest,0,sizeof(struct test));
EXEC SQL fetch test_cur into :stTest;
}
printf("\n");
EXEC SQL close test_cur;
EXEC SQL free test_cur;

$close database;
return 0;
}
/*************************************************/
编译: esql -o test test.ec

[此贴子已经被作者于2007-9-25 17:10:08编辑过]


----------------解决方案--------------------------------------------------------
  相关解决方案