一些常用的ProC的语法.docx

上传人:b****4 文档编号:1493185 上传时间:2022-10-22 格式:DOCX 页数:9 大小:45.83KB
下载 相关 举报
一些常用的ProC的语法.docx_第1页
第1页 / 共9页
一些常用的ProC的语法.docx_第2页
第2页 / 共9页
一些常用的ProC的语法.docx_第3页
第3页 / 共9页
一些常用的ProC的语法.docx_第4页
第4页 / 共9页
一些常用的ProC的语法.docx_第5页
第5页 / 共9页
点击查看更多>>
下载资源
资源描述

一些常用的ProC的语法.docx

《一些常用的ProC的语法.docx》由会员分享,可在线阅读,更多相关《一些常用的ProC的语法.docx(9页珍藏版)》请在冰豆网上搜索。

一些常用的ProC的语法.docx

一些常用的ProC的语法

一些常用的ProC的语法

CLOSE

作用:

关闭游标。

语法:

EXECSQLCLOSE{cursor|:

cursor_variable};

参数:

√    cursor:

SQL游标名。

√    cursor_variable:

PL/SQL游标变量名。

举例:

EXECSQLCLOSEauths_cursor;

 

COMMIT

作用:

提交事务、释放内存、断开连接。

语法:

EXECSQL[AT{:

host_variable|dbname}]COMMIT

[WORK][{[COMMENT‘text’][RELEASE]|[FORCE‘text’[:

integer]]}];

参数:

√    dbname:

使用DECLAREDATABASE语句定义,并使用CONNECT语句建立的数据库连接名。

√    host_variable:

宿主变量字符串,它是使用CONNECT语句建立的数据库连接名。

如果忽略AT子句,那么使用缺省数据库连接。

√    WORK:

COMMIT与COMMITWORK是等价的,使用该参数是为了与标准SQL兼容。

√    COMMENT:

用于指定与当前事务相关的注释,‘text’是用单引号括起来的不超过50个字符的字符串。

如果当前事务是“受怀疑的”,那么它将与事务ID号一起被存储到数据字典DBA_2PC_PENDING中。

√    RELEASE:

释放资源,断开连接。

√    FORCE:

手工提交“受怀疑的”分布式事务,该事务由‘text’所包含的事务ID号来标识,查询数据字典视图DBA_2PC_PENDING可以获得该ID号。

举例:

/*  使用DECLAREDATEBASE语句定义aca_db  */

EXECSQLATaca_dbCOMMITRELEASE;

略AT子句,那么使用缺省数据库连接。

√    cusor:

游标名。

√    SELECTcommand:

与游标相关的SELECT语句。

√    statement_name:

与游标相关的SQL语句的标识符,该标识符必须使用DECLARESTATEMENT语句定义。

√    block_name:

与游标相关的PL/SQL块的标识符,该标识符必须使用DECLARESTATEMENT语句定义。

举例:

EXECSQLDECLAREauths_curCURSOR

    FORSELECTauthor_code,name,salaryFROMauths

    WHEREauthor_code=:

author_code

    FORUPDATEOFsalary;

 

DELETE

作用:

删除表或视图基表中的数据。

语法:

EXECSQL[AT{:

host_variable|dbname}][FOR:

host_integer]DELETE[FROM]

    {[schema.]{table[{PARTITION(partition_name)|@dblink}]|view[@dblink]}

|subquery}[alias][WHERE{conditions|CURRENTOFcursor}];

参数:

√    dbname:

使用DECLAREDATABASE语句定义,并使用CONNECT语句建立的数据库连接名。

√    host_variable:

宿主变量字符串,它是使用CONNECT语句建立的数据库连接名。

如果忽略AT子句,那么使用缺省数据库连接。

√    FOR:

host_integer:

当WHERE子句中包含宿主数组时,使用该子句用于限制语句的执行次数。

其中,host_integer是整数宿主变量。

√    schema:

包含表或视图的模式(schema)。

√    table:

表名。

√    view:

视图名。

√    dblink:

数据库链名。

√    partition_name:

表的分区名。

√    subquery:

子查询语句,该子查询所检索到的数据将被删除。

√    alias:

表、视图或子查询的别名。

√    WHERE:

指定条件子句。

√    conditions:

指定删除条件。

√    CURRENTOFcursor:

删除游标当前行,cursor为游标名。

举例:

EXECSQLDELETEFROMauthsWHEREauthor_code=:

author_code;

EXECSQLDECLAREarticle_curCURSOR

    FORSELECTarticle_code,titleFROMarticle;

EXECSQLOPENarticle_cur;

EXECSQLFETCHarticle_curINTO:

article_code,:

title;

EXECSQLDELETEFROMarticleWHERECURRENTOFarticle_cur;

 

FETCH

作用:

推进游标、检索数据,并且将这些数据赋给宿主变量。

语法:

EXECSQL[FOR:

host_integer]FETCH{cursor|:

cursor_variable}

{USINGDESCRIPTORdescriptor|INTO

:

host_variable[[INDICATOR]:

indicator_variable]

[,:

host_variable[[INDICATOR]:

indicator_variable],…]

};

参数:

√    FOR:

host_integer:

当使用宿主数组时,该子句用于限制检索行数,其中,host_integer是整数宿主变量。

如果忽略该子句,那么检索到填满最小数组的行数为止。

√    cursor:

使用DECLARECURSOR语句定义的游标名。

√    cursor_variable:

使用ALLOCATE语句分配的游标变量名。

√    INTO:

指定宿主变量和指示变量列表。

√    USING:

指定描述区,该子句只用在动态SQL方法四中。

举例:

EXECSQLDECLAREauths_cursorCURSORFOR

SELECTname,salaryFROMauths;

    EXECSQLOPENauths_cursor;

    …

    EXECSQLWHENEVERNOTFOUNDGOTO…

    for(;

{

    EXECSQLFETCHauths_cursorINTO:

name,:

salary;

    …    

}

INSERT

作用:

插入数据到表或视图基表中。

语法:

EXECSQL[AT{:

host_variable|dbname}][FOR:

host_integer]INSERTINTO

[subquery[schema.]{table|view}[@dblink|PARTITION(part_name)]]

[(column[,column,…])]{VALUES(expr[,expr,…])|(subquery)}

参数:

√    dbname:

使用DECLAREDATABASE语句定义,并使用CONNECT语句建立的数据库连接名。

√    host_variable:

宿主变量字符串,它是使用CONNECT语句建立的数据库连接名。

如果忽略AT子句,那么使用缺省数据库连接。

√    FOR:

host_integer:

当VALUES子句中包含宿主数组时,使用该子句可以限制语句的执行次数。

其中,host_integer是整数宿主变量。

如果忽略该子句,语句只执行一次。

√    schema:

包含表或视图的模式(schema)。

√    table:

表名。

√    view:

视图名。

√    dblink:

数据库链名。

√    part_name:

表的分区名。

√    column:

列名。

√    VALUES:

指定插入到表或视图中的数据。

√    subquery:

子查询。

举例:

EXECSQLINSERTINTOauths(author_code,name,birthdate,entry_date_time)

VALUES(:

author_code,:

name,:

birthdate,:

entry_date_time);

EXECSQLINSERTINTOnew_auths

(author_code,name,birthdate,entry_date_time)

SELECTauthor_code,name,birthdate,entry_date_time

FROMauthsWHEREauthor_code=:

author_code;

 

OPEN

作用:

打开游标。

语法:

EXECSQLOPENcursor

    [USING

    DESCRIPTORdescriptor_name|

    :

host_variable[INDICATOR]:

indicator_variable

]

参数:

√    cursor:

游标名。

√    host_variable:

宿主变量。

√    indicator_variable:

与host_variable相关的指示变量。

√    DESCRIPTORdescriptor_name:

指定描述区。

其中descriptor_name是描述区名,描述区必须使用DESCRIPTOR语句初始化。

举例:

EXECSQLDECLAREauths_cursorCURSORFOR

    SELECTname,salary

      FROMauths

    WHEREauthor_code=:

author_code;

EXECSQLOPENauths_cursor;

 

PREPARE

作用:

准备动态SQL语句或PL/SQL块。

语法:

EXECSQLPREPAREstatement_idFROM

{

    [:

host_string]|[‘text’]|[select_command]

}

参数:

√  

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 表格模板 > 合同协议

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1