Click here to view and discuss this page in DocCommentXchange. In the future, you will be sent there automatically.

SQL Anywhere 11.0.1 (中文) » SQL Anywhere 服务器 - SQL 的用法 » 存储过程和触发器 » 使用过程、触发器和批处理 » 过程简介

 

创建过程

在 Sybase Central 中,[创建过程向导] 提供了使用过程模板的选项。此外,还可以使用 Interactive SQL 执行 CREATE PROCEDURE 语句来创建过程。必须拥有 DBA 或 RESOURCE 权限才能创建过程。

♦  创建新过程 (Sybase Central)
  1. 以具有 DBA 或资源权限的用户身份连接到数据库。

  2. 在左窗格中,双击 [过程和函数]。

  3. 选择 [文件] » [新建] » [过程]。

  4. 请按照 [创建过程向导] 中的说明进行操作。

  5. 在右窗格中,单击 [SQL] 选项卡以填写过程代码。

    新过程即出现在 [过程和函数] 中。

示例

以下简单示例创建了过程 NewDepartment,用以对 SQL Anywhere 示例数据库的 Departments 表执行 INSERT 操作,从而创建新的部门。

CREATE PROCEDURE NewDepartment(
   IN id INT,
   IN name CHAR(35),
   IN head_id INT )
BEGIN
   INSERT
   INTO Departments ( DepartmentID,
       DepartmentName, DepartmentHeadID )
   VALUES ( id, name, head_id );
END;

过程的主体是一个复合语句。复合语句以 BEGIN 语句起始,以 END 语句结束。在 NewDepartment 的例子中,复合语句是包括在 BEGIN 和 END 语句之间的单个 INSERT。

过程的参数可以标记为 IN、OUT 或 INOUT 之一。缺省情况下,参数是 INOUT 参数。NewDepartment 过程的所有参数都是 IN 参数,因为该过程并不更改它们。如果参数不用来向调用者返回值,则应将参数设置为 IN。

临时过程

要创建临时过程,必须使用 CREATE TEMPORARY PROCEDURE 语句,该语句是 CREATE PROCEDURE 语句的扩展。临时过程不会永久存储在数据库中。它们会在连接结束或有明确删除指示时(以最先发生的为准)被删除。请参见CREATE PROCEDURE 语句(Web 服务)

远程过程

要创建远程过程,必须至少拥有一个远程服务器。请参见:

另请参见