remoteRunCompatible

语法

remoteRunCompatible(conn, script, args)

参数

conn 是远程数据库的连接句柄。

script 是要执行的脚本或函数名。

args 可选的可变长度参数。如果 script 是函数名,args 是函数的参数。

详情

将脚本或函数传输到远程数据库执行。

remoteRunCompatible 与 remoteRun 的区别在于:

  • remoteRunCompatible 对本地和远程数据库的版本没有限制。

  • remoteRun 在本地数据库为 3.00 版本时,不支持远程数据库的版本低于3.00。

例子

第一种用法:script 是脚本,则表示在远程节点上执行脚本。

conn =
              xdb(host="localhost",port=8848,userId="admin",password=123456);
            remoteRunCompatible(conn, "avg(1..100)");

结果为 50.5。

第二种用法:script 是函数名

  • 如果 script 加了单引号,双引号或者反引号,那么表示在远程节点上调用函数。函数是定义在远程节点上,但是参数由本地节点传过去。

在远程节点增加函数视图 myAvg

def myAvg(x){ return avg(x)+2 } addFunctionView(myAvg)

连接远程节点调用视图

conn =  xdb("localhost",8848,`admin,`123456);
            remoteRunCompatible(conn, "myAvg", 1..100);

结果为 52.5。

  • 如果 script 不加单引号,双引号或者反引号,那么表示调用的函数定义在本地节点上。参数也是由本地节点传过去。

在本地节点定义同名函数 myAvg

def myAvg(x){ return avg(x)+1 }

在远程节点执行此函数

conn =  xdb("localhost",8848,`admin,`123456);
            remoteRunCompatible(conn, myAvg, 1..100);

结果为 51.5。

相关函数:remoteRun