PowerBuilder程序设计语言之SQL语句在线教程

减小字体 增大字体 作者:佚名  来源:本站整理  发布时间:2009-03-16 22:46:13
14.3 SQL语句

14.3.1 CLOSE CURSOR

CLOSE CURSOR的语法格式为:

CLOSE CURSORNAME;

关闭CURSORNAME代表的由OPEN打开的游标,正在使用的游标不能关闭。通常检索后在SQLCode等于100时使用,在执行该语句后最好检测关闭是否成功。

14.3.2 CLOSE Procedure

CLOSE Prodedure语句的语法格式为:

CLOSE ProcedureName;

关闭SQL名为ProcedureName的过程,这一语句只能在使用EXECUTE执行了该过程后关闭该过程的时候才能使用。用户不能对使用USING TransactionObject子句的事务对象说明的过程使用CLOSE语句。用户只需要关闭那些返回状态信息的程序,对于那些不返回状态信息或者返回状态信息代码为100的程序,POWER BUILDER自动地关闭它们。

14.3.3 COMMIT

COMMIT语句的语法格式为:

COMMIT [USING TransactionObject];

TransactionObject代表自上一次COMMIT、ROLLBACK或者CONNECT操作以来的需要永久更新的数据库操作的事物对象的名称。该子句仅在操纵除默认事务对象(SQLCA)以外的事务对象的需要。该语句会关闭所有的游标和过程,但不会引起连接中断。

14.3.4 CONNECT

CONNECT语句的语法格式为:

CONNECT [USING TransactionObject];

TransactionObject代表包含数据库连接信息事务对象名称。连接默认事务对象SQLCA,在对数据库进行任何的操作之前,必须首先使用CONNECT语句连接数据库

14.3.5 DECLARE Cursor

DECLARE Cursor语句的语法格式为:

DECLARE CursorNsme CURSOR FOR SelectStatement

[USING TransactionObject];

CursorName代表游标名,可以使用任何有效的POWER BUILDER标识符。SelectStatement代表SELECT语句。除使用默认事务对象SQLCA外的事务对象需要使用USING TransectionObject指明使用的事务对象。

这个语句为指定的事务对象说明一个游标,是一个不可执行语句。用户可以使用该语句按照与说明变量类似的方法,说明某事务对象的游标。

例如,下面说明了一个名为CUR的游标:

DECLARE CUR CURSOR FOR

SELECT database.field1, database.field2

FROM database

WHERE database.field >= 36;

14.3.6 DECLARE Procedure

DECLARE Procedure语句的语法格式为:

DECLARE ProcedureName PROCEDURE FOR

StoredProcedureName

@Praram1 = Value1 , @Param2 = Value2 , ......

[USING TransactionObject];

ProcedureName代表过程名,可以使用任何POWER BUILDER接受的标识符,StoredProcedureName 代表数据库中保存的过程,@Praram1是StoredProcedureName过程的参数,在@Praram1后的VALUE1是它的初始化值,USING TransactionObject子句指明引用的事务对象,如果缺省该子句,表示使用默认事务对象SQLCA。

14.3.7 DELETE

DELETE删除某事务对象中的表中的数据。其语法格式为:

DELETE FROM TableName WHERE Criteria

[USING TransactionObject];

TableName代表将要删除的数据的持有表,Criteria指明删除的标准,USING TransectionObject指明使用的事务对象,缺省表示使用SQLCA。

删除游标中当前数据和与之对应的表中的数据,可以使用下面的DELETE语句。

DELETE FROM TableName WHERE CURRENT OF CursorName

TableName是持有要删除数据的表的标识符,CursorName是与之对应的游标名。

14.3.8 DISCONNECT

DISCONNECT首先执行COMMIT语句,然后与数据库解除连接。其语法格式为:

DISCONNECT [USING TransactionObject];

TransactionObject是包含需要接触连接数据库信息的事务对象。

14.3.9 EXECUTE

EXECUTE语句执行一个已说明的过程,在这里不需要指明事务对 象,因为在说明过程时事务对象已经指明。EXECUTE的语法格式为:

EXECUTE ProcedureName;

其中ProcedureName指明要求执行的过程的名字。

14.3.10 FETCH

FETCH语句从游标或者过程中读取当前的记录,并把它们存储在指定的变量当中。数据库支持的情况下,用户还可以使用FETCH FIRST、FETCH PRIOR或FETCH LAST语句。FETCH语句的语法格式为:

FETCH Cursorname Procedure INTO HostVariableList;

其中HostVariableList代表存储数据库记录的变量列表。

14.3.11 INSERT

INSERT语句在数据库中插入一条记录。其语法格式为:

INSERT INTO TableName(FieldName[,...])

VALUES (ValueOfField[,...])

[USING TransactionObject];

14.3.12 OPEN

OPEN语句打开了说明的游标,并执行了相应的SQL语句。其语法格式为:

OPEN CursorName;

其中CursorName代表游标名。

14.3.13 ROLLBACK

ROLLBACK语句表示放弃自上一个COMMIT、ROLLBACK或者CONNECT语句以来的所有数据库操作,并关闭所有的游标和过程。其语法格式为:

ROLLBACK [USING TransactionName];

其中TransactionObject代表在使用非默认事务对象时的事务对象名。

14.3.14 SELECT

SELECT语句检索一条记录,如果找到多于一条的记录,则发生错误。其语法格式为:

SELECT FieldOFTableList

INTO VariableList

FROM TableName

WHERE Criteria

[USING TransactionObject];

其中FieldOFTableList代表接收数据的变量名列表,TableName代表被检索的表名,Criteria是检索条件,TransactionObject代表在使用非默认事务对象时的事务对象名。

14.3.15 SELECTBLOB

SELECTBLOB检索blob型数据,找到多条符和查询条件的数据时,事务对象状态属性将指明错误。其句法为:

SELECTBLOB BlobFieldOFTableList

INTO VariableList

FROM TableName

WHERE Criteria

[USING TransactionObject];

其中FieldOFTableList代表blob型字段名列表,VariableList代表接受数据的blob变量名列表,TableName代表被检索的表名,Criteria是检索条件,TransactionObject代表在使用非默认事务对象时的事务对象名。

14.3.16 UPDATE

UPDATE修改指定的数据,其句法为:

UPDATE TableName

SET FieldName = VarName

WHERE Criteria

[USING TransactionObject];

用下面的UPDATE语句可以修改与游标当前所指对应的记录,其句法为:

UPDATE TableName

SET FieldName = VarName

WHERE CURRENT OF CurSortName;

14.3.17 UPDATEBLOB

UPDATEBLOB语句修改blob型数据。格式为:

UPDATEBLOB TableName

SET BlobColumn = BlobVariable

WHERE Criteria

[USING TransactionObject];

其中Tablename指需修改blob所在的表,BlobColumn指blob数据所在的列名,BlobVariable代表包含blob数据的变量。


Tags:

作者:佚名
分享到: 微信 更多