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 的用法 » 远程数据和批量操作 » 访问远程数据 » 使用远程过程调用 (RPC)

 

创建远程过程

使用以下过程之一发出远程过程调用。

远程过程接受长度最多 254 个字节的输入参数,并在输出变量中返回最多 254 个字符。

如果远程过程可以返回结果集,即使并不是在所有情况下都返回,本地过程定义也必须包含 RESULT 子句。

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

  2. 在左窗格中,双击 [远程服务器]。

  3. 选择远程服务器,然后在右窗格中单击 [远程过程] 选项卡。

  4. 从 [文件] 菜单中,选择 [新建] » [远程过程]。

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

♦  创建远程过程 (SQL)
  1. 以具有 DBA 权限的用户身份连接到数据库。

  2. 定义发给 SQL Anywhere 的过程。

    语法与本地过程定义相同,只是不使用 SQL 语句组成该过程的主体,而是提供一个位置字符串定义该过程所驻留的位置。

    CREATE PROCEDURE remotewho()
    AT 'bostonase.master.dbo.sp_who';

有关详细信息,请参见CREATE PROCEDURE 语句(Web 服务)

♦  发布远程过程调用 (SQL)
  1. 以具有 DBA 权限的用户身份连接到数据库。

  2. 执行该过程,如下所示:

    CALL remotewho();
示例

本示例在调用远程过程时指定一个参数:

CREATE PROCEDURE remoteuser ( IN uname CHAR( 30 ) )
AT 'bostonase.master.dbo.sp_helpuser';
CALL remoteuser( 'joe' );
远程过程的数据类型

RPC 参数可以使用以下数据类型: