#include <stdio.h>
#include <string.h>
#include <stdio.h>
#include <sqlca.h>
$struct _db_person
{
char name[30+1];
char card[12+1];
int age;
};
char *trim(char *str)
{
char *p, *buffer;
int len;
if( NULL!=str )
{
len = strlen(str);
if( len > 0 )
{
buffer=(char *)malloc(sizeof(char)*(len+1));
if( NULL != buffer )
{
memmove(buffer, str, len);
buffer[len]=0;
p = buffer + len - 1;
while( (p != buffer) && ((*p > 0x00) && (*p <= ' ')) )
*(p--) = 0;
p = buffer;
while( (*p > 0x00) && (*p <= ' ') )
p++;
strcpy(str, p);
free(buffer);
}
}
}
return str;
}
int GetData(struct _db_person *pps)
{
char strage[20];
memset(pps, 0, sizeof(struct _db_person));
printf("enter name<press enter only to exit>: ");
fgets(pps->name,sizeof(pps->name),stdin);
trim(pps->name);
if( strlen(pps->name) == 0 )
return -1;
printf("enter card no<press enter only to exit>: ");
fgets(pps->card,sizeof(pps->card),stdin);
trim(pps->card);
if( strlen(pps->card) == 0 )
return -2;
printf("enter age<press enter only to exit>: ");
fgets(strage,sizeof(strage),stdin);
trim(strage);
if( strlen(strage) == 0 )
return -3;
pps->age = atoi(strage);
return 0;
}
int main(void)
{
$struct _db_person dbps;
$database exec01;
if( SQLCODE != 0 )
{
printf("open demo1 failure,SQLCODE=%d/n",SQLCODE);
return -1;
}
while( 1 )
{
if( GetData(&dbps)<0 )
break;
$insert into person(name, card, age) values($dbps.name, $dbps.card, $dbps.age);
printf("insert data result: SQLCODE=%d/n",SQLCODE);
$declare vcursor cursor for select name, card, age into $dbps.name, $dbps.card, $dbps.age from person;
printf("declare vcursor result: SQLCODE=%d/n",SQLCODE);
$open vcursor;
printf("open vcursor result: SQLCODE=%d/n",SQLCODE);
if( 0==SQLCODE )
{
while( 1 )
{
$fetch vcursor;
if( 0==SQLCODE )
{
printf("name=[%s],card=[%s],age=[%d]/n",dbps.name,dbps.card,dbps.age);
}
else
{
if( SQLCODE==100 )
printf("fetch end!/n");
else
printf("fetch failure!SQLCODE=%d/n",SQLCODE);
break;
}
}
}
$close vcursor;
$free vcursor;
}
$disconnect current;
return 0;
}
程序為簡單的C中嵌入informix數據庫,源文件為.ec文件,編譯器為esql,頭文件目錄:$(INFORMIXDIR)/include,管理工具dbaccess,用法:dbaccess [dbname],dbschema,用法:dbschema [-t tabname]
主站蜘蛛池模板:
日韩在线二区
|
日本三级电影天堂
|
www.99热这里只有精品
|
久久精品小视频
|
av黄色在线
|
欧美久久一区二区三区
|
亚洲午夜精品久久久久久app
|
一本大道综合伊人精品热热
|
亚洲一区二区三区在线播放
|
欧美精品久久久久久久宅男
|
日本不卡免费新一二三区
|
一区二区三区视频免费观看
|
欧美与黑人午夜性猛交久久久
|
91精品国产综合久久国产大片
|
国产视频观看
|
午夜视频在线播放
|
a中文字幕
|
天天精品在线
|
在线色网
|
久久国产成人
|
国产精品国产自产拍高清
|
成人精品久久久
|
日韩视频一区二区三区
|
久久亚洲精品国产精品紫薇
|
久久人|
91不卡|
一区二区视频网
|
一本大道综合伊人精品热热
|
五月激情综合网
|
最新黄色网址在线播放
|
日韩中文字幕免费在线
|
日韩免费av一区二区
|
欧美精品 在线观看
|
91蜜桃婷婷亚洲最大一区
|
在线视频偷国产精品
|
欧美精品一区二区三区四区
|
久草操
|
亚洲国产精品一区二区第一页
|
成人精品一区二区三区中文字幕
|
色婷婷国产精品久久包臀
|
日本成人在线看
|