首页
登录 | 注册

informix的游标使用得方法和代码

  出处:hur.cn   
在informix里,我门要把一个记录里得值全部都读出来,然后在屏幕上把这些记录值给打印出来得话,我门该如何实现呢,那我们就要使用到游标得问题,下面是一段使用游标得简单代码,这是一个ec程序:
#include  
#include  
#include  
#include  
#include  

main() 

    EXEC SQL INCLUDE SQLCA; /*定义通信区*/ 
 
    EXEC SQL BEGIN DECLARE SECTION; /*主变量定义开始*/ 
    char *string1;
    char str1[10];
    char str2[10];
    EXEC SQL END DECLARE SECTION; /*主变量定义结束*/ 
    
    //EXEC SQL DROP DATABASE example;
    EXEC SQL CREATE DATABASE example;
    EXEC SQL DATABASE example; /*连接数据库*/ 
    if (SQLCODE==0) 
    { 
        EXEC SQL CREATE TABLE Student 
        ( alarm char(6) , 
          sname char(10)
        );  
    }
    
    //插入数据
    EXEC SQL INSERT INTO Student valueS("aaaa","bbbb"); 
    EXEC SQL INSERT INTO Student valueS("dddd","dddd"); 
    EXEC SQL INSERT INTO Student valueS("cccc","cccc"); 
    
    //设置游标其中DECLARE是将查询得结果赋予fet_cur
 EXEC SQL DECLARE fet_cur CURSOR FOR
    SELECT alarm, sname FROM Student;
 EXEC SQL OPEN fet_cur;
 
 printf("SQLCODE=%d\n", SQLCODE);

  while(1)
 {
  memset(str1, 0, sizeof(str1));
  memset(str2, 0, sizeof(str2));
  
        //把记录游标fet_cir移到一个新位置,凭且把记录值赋予变量str1和str2
        EXEC SQL FETCH fet_cur INTO :str1,:str2;
     if (SQLCODE !=0)
  {
      printf("LINE=%d, SQLCODE=%d", __LINE__, SQLCODE);
   break;
  }
  //打印记录结果
     printf("str1=%s, str2=%s\n",str1,str2);  
 }
 
 //关闭游标和数据库
 EXEC SQL CLOSE fet_cur;
 EXEC SQL CLOSE DATABASE;
    /*
        EXEC SQL SELECT first 1 alarm,sname 
          INTO :str1,:str2 FROM Student;
        if (SQLCODE !=0)
     {
        printf("LINE=%d, SQLCODE=%d", __LINE__, SQLCODE);
        return(-1);
        }
        printf("str1=%s, str2=%s\n",str1,str2);  
    */
    return(0); 

其结果是在屏幕上打印出从informix里读出得数据:
str1=aaaa     , str2=bbbb
str1=dddd     , str2=dddd
str1=cccc     , str2=cccc

相关文章

  • [.Net] Silverlight 4和Flash 10.1/AIR2简单对比和选择
    [转自:http://www.cnblogs.com/jv9/archive/2010/10/08/1845513.html]  2010-10-07 16:00 by jv9                    互联网经历过Web 2. ...
  • 性能优化方法和技巧
    系列目录 性能优化方法和技巧性能优化的方法和技巧:概述性能优化的方法和技巧:代码性能优化的方法和技巧:工具 这是一个可以用一本书来讲的话题,用一系列博客来讲,可能会比较单薄一点,这里只捡重要的说,忽略很多细节,当然以后还可以补充和扩展这个话 ...
  • Kubernetes代码解读-apiserver之list-watch
    list-watch的需求 上图是一个典型的Pod创建过程,在这个过程中,每次当kubectl创建了ReplicaSet对象后,controller-manager都是通过list-watch这种方式得到了最新的ReplicaSet对象,并 ...
  • iOS,Android和Windows都会为开发人员公开API,为每个人构建可访问的移动应用. 我们很高兴地宣布,我们在Xamarin.Forms中添加了可用性的新API,以便开发人员更轻松地构建可访问的跨平台移动应用程序. 在这篇文章中, ...
  • 网站被植入恶意代码 该怎么解决
    如何快速恢复网站被黑后的正常访问 导致是什么原因导致网站首页总是被修改呢 1,针对网站程序源码进行升级,对网站的上传目录进行过滤限制. 3,管理员的账户和密码一定不要使用弱密码,一定要用字母加数字或符号组合的12到18位密码. 5,要经常对 ...
  • 干货 | JAVA代码引起的NATIVE野指针问题(下)-mi
    朴英敏,小米MIUI部门.从事嵌入式开发和调试工作8年多,擅长逆向分析方法,主要负责解决安卓系统稳定性问题. 实施hook: 我们有了hook,但目前还不知道是哪个so中释放了functor. 如果无法确定是哪个so,可以多hook几个so ...

2019 unjeep.com webmaster#unjeep.com
12 q. 0.014 s.
京ICP备10005923号