【问题标题】:Create Sequence in Pro*c language用 Pro*c 语言创建序列
【发布时间】:2015-07-27 04:24:55
【问题描述】:

我正在学习 Pro*c 语言。我正在尝试创建一个序列。但是当我们创建游标时,我没有得到使用哪个关键字,然后我们将其声明为

    EXEC SQL DECLARE CUR_NAME CURSOR FOR <<SELECT STMT>>.

那么有什么方法可以在 Pro*C 中创建序列吗?

我使用 EXECUTE IMMEDIATE 尝试了这种方式。

 EXEC SQL  EXECUTE IMMEDIATE "create sequence seq1 minvalue 1 maxvalue 9999 start with 1 increment by 1";
 EXEC SQL COMMIT WORK RELEASE;

但它没有反映在我的数据库中。序列不是在其中创建的。

【问题讨论】:

  • 可以将 CURSORS 声明为对象吗?我只将它们用作BEGIN DECLAREEND DECLARE 之间的变量。然后打开并选择它们。
  • 是的,可以。我就是这样用的。
  • Pro*C 本身并不是一门语言,而是 Oracle 的 C 预编译器。这与“嵌入式”标签无关!

标签: c plsql proc


【解决方案1】:

我们可以通过 2 种方法得到解决方案:

第一个是:

 EXEC SQL create sequence seq1 minvalue 1 maxvalue 9999 start with 1 increment by 1;
 EXEC SQL COMMIT WORK RELEASE;

第二个:

 EXEC SQL EXECUTE IMMEDIATE 'create sequence seq1 minvalue 1 maxvalue 9999 start with 1 increment by 1';
 EXEC SQL COMMIT WORK RELEASE;

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2010-10-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-04-30
    • 2022-10-20
    • 1970-01-01
    相关资源
    最近更新 更多