• GBase 8s CLOSE 语句


    当您不再需要引用 Select 或 Function 游标检索的行时,请使用 CLOSE 子句关闭游标。

    在 ESQL/C 中,该语句还可以刷新并关闭 Insert 游标。可在 GBase 8s ESQL/C 或 SPL 中使用此语句。

    在这里插入图片描述

    用法

    关闭游标使得游标对于除 OPEN 或 FREE (或 OPEN FOR)之外的任何语句无用,并释放数据库服务器已经分配到游标的资源。

    在不兼容ANSI 的数据库中,您可以关闭尚未打开的游标或已经关闭的游标。在这些情况下没有采取任何操作。

    在兼容 ANSI 的数据库中,如果您关闭尚未打开的游标,那么数据库服务器返回错误。

    示例

    以下示例关闭了游标 democursor 。

    EXEC SQL close democursor;

    以下是来自 demo1.ec 的 ESQL/C Source 代码示例:

    #include

    EXEC SQL define FNAME_LEN 15;

    EXEC SQL define LNAME_LEN 15;

    main()

    {

    EXEC SQL BEGIN DECLARE SECTION;

    char fname[ FNAME_LEN + 1 ];

    char lname[ LNAME_LEN + 1 ];

    EXEC SQL END DECLARE SECTION;

    printf( “DEMO1 Sample ESQL Program running.\n\n”);

    EXEC SQL WHENEVER ERROR STOP;

    EXEC SQL connect to ‘stores7’;

    EXEC SQL declare democursor cursor for

    select fname, lname

    into :fname, :lname

    from customer

    where lname < “C”;

    EXEC SQL open democursor;

    for (;😉

    {

    EXEC SQL fetch democursor;

    if (strncmp(SQLSTATE, “00”, 2) != 0)

    break;

    printf(“%s %s\n”,fname, lname);

    }

    if (strncmp(SQLSTATE, “02”, 2) != 0)

    printf(“SQLSTATE after fetch is %s\n”, SQLSTATE);

    EXEC SQL close democursor;

    EXEC SQL free democursor;

    EXEC SQL create routine from ‘del_ord.sql’;

    EXEC SQL disconnect current;

    printf(“\nDEMO1 Sample Program over.\n\n”);

    exit(0);

    }

    关闭 Select 或 Function 游标

    当游标与 SQL 的 SELECT 、EXECUTE FUNCTION 或 EXECUTE PROCEDURE 语句相关时,关闭游标将终止此相关联的 SQL 语句。

    数据库服务器释放它可能已经分配到活动行集的所有资源。例如,它用来保存有序集的临时表。数据库服务器还释放它在在通过游标选择的行上可能持有的任何锁定。然而,如果事务包含 CLOSE 语句,则在您执行 COMMIT WORK 或 ROLLBACK WORK 语句之前数据库服务器不释放锁定。

    关闭 Select 游标或 Function 游标之后,您无法执行游标的 FETCH 语句,直到您重新打开它。

    SPL 例程中,内置的 SQLCODE 函数可以显示 Select 游标或 Function 游标的 CLOSE 语句的结果。该函数返回的值相当于 sqlca 结构的 SQLCODE 字段。然而,如果您在调用 SPL 例程的上下文之外调用内置的 SQLCODE 函数,则 GBase 8s 发出错误。

  • 相关阅读:
    黑灰产套现城市消费券大揭秘
    【游戏建模全流程】使用ZBrush制作龙模型
    MySQL 常见存储引擎详解(一)
    基于vue框架潮牌官网设计与实现毕业设计源码010955
    R语言 数据的整理与清洗(第一篇)
    2.10 PE结构:重建重定位表结构
    ES6迭代器详细介绍
    骨传导耳机伤耳朵吗?带你一分钟了解骨传导耳机
    java集合,栈
    【笔记】电商订单数据分析实战
  • 原文地址:https://blog.csdn.net/qq_39280087/article/details/126478465