下表对 ESQL 语句及其操作进行了摘要。
语句类型 | 描述 |
---|---|
基本语句: | |
BEGIN ... END 语句 | 使得在 BEGIN 和 END 关键字中定义的语句的状态为单语句。 |
CALL 语句 | 调用已使用 CREATE FUNCTION 或 CREATE PROCEDURE 语句定义的用户编写例程。 |
CASE 语句 | 使用 WHEN 子句中定义的规则来选择要执行的语句块。 |
CREATE FUNCTION 语句 | 与 CREATE PROCEDURE 类似,CREATE FUNCTION 定义用户编写的例程。(参考资料中描述了 CREATE FUNCTION 和 CREATE ROUTINE 的几点区别。) |
CREATE MODULE 语句 | 创建模块(与节点关联的指定容器)。 |
CREATE PROCEDURE 语句 | 与 CREATE FUNCTION 类似,CREATE PROCEDURE 定义用户编写的例程。(参考资料中描述了 CREATE FUNCTION 和 CREATE ROUTINE 的几点区别。) |
DECLARE 语句 | 声明可用于存储临时值的一个或多个变量。 |
IF 语句 | 根据对条件表达式求值的结果,处理一个语句集合。 |
ITERATE 语句 | 放弃对包含 WHILE、REPEAT、LOOP 或 BEGIN 语句的当前迭代的处理,且可以开始下一个迭代。 |
LEAVE 语句 | 放弃对包含 WHILE、REPEAT、LOOP 或 BEGIN 语句的当前迭代的失败,并停止循环。 |
LOOP 语句 | 重复地、无条件地处理语句序列。 |
REPEAT 语句 | 处理语句序列,然后求值条件表达式。如果表达式的求值结果为 TRUE,则再次执行这些语句。 |
RETURN 语句 | 停止对当前函数或过程的处理,并将控制传递回调用者。 |
SET 语句 | 求值源表达式,并为目标实体指派结果。 |
THROW 语句 | 生成用户异常。 |
WHILE 语句 | 对条件表达式进行求值,如果为 TRUE,则执行语句序列。 |
消息树操作语句: | |
ATTACH 语句 | 将消息树的一部分连接到消息层次结构中的新位置。 |
CREATE 语句 | 创建新的消息字段。 |
DELETE 语句 | 拆离并破坏消息树的一部分,使它的内存能重用。 |
DETACH 语句 | 拆离消息树的一部分,但不删除它。 |
FOR 语句 | 在列表(例如,消息数组)中进行迭代。 |
MOVE 语句 | 更改目标引用变量指向的字段。 |
数据库更新语句: | |
DELETE FROM 语句 | 根据搜索条件从外部数据库中的表中删除行。 |
INSERT 语句 | 向外部数据库添加新的行。 |
PASSTHRU 语句 | 获取一个字符值并把它作为一个 SQL 语句传递到外部数据库。 |
UPDATE 语句 | 更新外部数据库中的表中的指定行和列的值。 |
节点交互作用语句: | |
PROPAGATE 语句 | 将消息传播到消息流中的下游节点。 |
其他语句: | |
BROKER SCHEMA 语句 | 该语句是可选的,在 ESQL 文件中使用它以显式地标识包含文件的模式。 |
DECLARE HANDLER 语句 | 声明错误处理程序。 |
EVAL 语句 | 获取一个字符值,将它解释为 SQL 语句,然后执行它。 |
LOG 语句 | 将记录写入事件或用户跟踪日志。 |
RESIGNAL 语句 | 重新抛出当前异常(如果有的话)。这由错误处理程序在无法处理异常时使用,给予错误处理程序在较高的作用域中处理异常的机会。 |