Oracle应用Linux开发C[6]

[入库:2005年9月21日] [更新:2007年3月24日]

本文简介:

printf("sqlo_execute failed: %sn", sqlo_geterror(dbh) );
return(0);
}
else if (status == SQLO_NO_DATA)
{
/* arrays were filled fully. Get rowcount */
rows_fetched = sqlo_prows(sth);
done_fetching = 1;
printf("Execute fetched all %d rowsn", rows_fetched);


printf("Fetched all in one gon");


for (i = 0; i < rows_fetched; ++i)
{
printf("%3d %5s %19f %20s %10sn",
nkey[i], ckey[i], nval[i], cval[i], dval[i]);
}
}


for (i = 0; i < rows_fetched; ++i)
{
if (!i)
printf("Execute fetched %d rowsn", rows_fetched);


printf("%3d %5s %19f %20s %10sn",
nkey[i], ckey[i], nval[i], cval[i], dval[i]);
}


rows_fetched_total += rows_fetched;
rows_to_fetch = 4;


while(!done_fetching)
{
rows_fetched = rows_to_fetch;
status = sqlo_fetch(sth, rows_to_fetch);
if (status < 0)
{
printf("sqlo_fetch failed: %sn", sqlo_geterror(dbh));
return 0;
}


if (status == SQLO_NO_DATA)
{
rows_fetched = sqlo_prows(sth);


if (rows_fetched_total == rows_fetched)
{
/* no new fetches */
done_fetching = 1;
rows_fetched = 0;
}
else
{
rows_fetched = rows_fetched - rows_fetched_total;
done_fetching = 1;
}
printf("sqlo_fetch fetched last %d rowsn", rows_fetched);
}
else if (status == SQLO_SUCCESS)
{
printf("sqlo_fetch fetched %d rowsn", rows_fetched);


}
else
{
printf("sqlo_fetch failed: %sn", sqlo_geterror(dbh));
return 0;
}


for (i = 0; i < rows_fetched; ++i)
{
printf("%3d %5s %19f %20s %10sn",
nkey[i], ckey[i], nval[i], cval[i], dval[i]);
}
rows_fetched_total += rows_fetched;
}
#ifdef CLOSE_CURSOR
if (0 > sqlo_close(sth))
{
printf("sqlo_close failed: %sn", sqlo_geterror(dbh));
return 0;
}
#endif
return 1;


}


/*-------------------------------------------------------------------------
* test_reopen
*-----------------------------------------------------------------------*/
int test_reopen( int dbh )
{
int sth;
const char **v;
int argc;
const char *argv[1];
char * select_stmt =
"SELECT NKEY, CKEY, NVAL, CVAL, DVAL FROM T_SQLORA_TEST WHERE NKEY >= :1";


argc = 0;
argv[argc++] = "0";


/* Select all and display */
if (0>(sth = sqlo_open(dbh, select_stmt, argc, argv)))
{
printf("sqlo_open failed: %sn", sqlo_geterror(dbh));
return 0;
}


while (0 == sqlo_fetch(sth,1))
{
v = sqlo_values(sth, NULL, 1);

本文关键:Oracle应用Linux开发C
 

本站最佳浏览方式为 分辨率 1024x768 IE 6.0(或更高版本的 IE浏览器)

go top