急问,正在用esql做sqlserver2000的访问程序,游标为什么不能移动?

 所属目录:Java   |   类型:技术问答   |   时间:2007-05-21
 问题:

游标只能读一次,下一次就没有了,是关闭了?循环下面的查询却可以正常显示..实在找不到问题出在哪里了..  
  程序结果中sqlcode最后一次打印是-19525  
   
  代码:  
  #include   <stddef.h>                   //   standard   c   run-time   header  
  #include   <stdio.h>                     //   standard   c   run-time   header  
   
  main()  
  {  
  exec   sql   begin   declare   section;  
   
  char   cid[5];  
  char   cname   [14];  
  char   city[21];  
  float   discnt;  
   
  char   aid[4];  
  char   aname[14];  
  short   int     perc;  
   
  char   pid[4];  
  char   pname[14];  
  int   quantity;  
  double   price;  
   
  int   ordno;  
  char   month[4];  
  int   qty;  
  double   dollars;  
   
   
  exec   sql   end   declare   section;  
   
   
   
   
  exec   sql   connect   to   cap    
  user   aaa.aaa;  
   
  exec   sql   set   cursortype   cur_standard;  
   
  exec   sql   declare   c1   cursor   for  
  select   aid     from   agents   where   perc=6;    
   
   
   
   
  exec   sql   open   c1   ;    
   
   
  while   (sqlcode   ==   0)  
  {  
  exec   sql   fetch   c1   into   :aid;  
   
  if   (sqlcode   ==   0)  
  printf("%s   ",aid);  
  else  
  printf("%d",sqlcode);  
  }  
   
  exec   sql   close   c1;    
   
   
  printf("\n",0);  
   
   
  exec   sql   select   cid   into   :cid  
  from   customers   where   city   =   kyoto;  
  printf("cid   :   %10s\n",cid);  
  exec   sql   disconnect   all;  
   
   
  return   (0);  
   
  }

.

· 网友精彩回答:

处理 SSI 文件时出错
© 2006-2008 All Rights Reserved