步骤 2:调用服务器程序(RDS 教程)

在客户端代理上调用方法时,服务器上的实际程序会执行该方法。 在此步骤中,你将在服务器上执行查询。

重要

从 Windows 8 和 Windows Server 2012 开始,Windows 操作系统不再包含 RDS 服务器组件(有关更多详细信息,请参阅 Windows 8 和 Windows Server 2012 兼容性实用手册)。 Windows 的未来版本中将移除 RDS 客户端组件。 请避免在新的开发工作中使用该功能,并着手修改当前还在使用该功能的应用程序。 使用 RDS 的应用程序应迁移到 WCF 数据服务

A 部分 如果你在本教程中未使用 RDSServer.DataFactory,则执行此步骤的最便捷方法是使用 RDS.DataControl 对象. RDS.DataControl 将创建代理的上一步与发出查询的这一步结合起来。

设置 RDS.DataControl 对象 Server 属性以标识应在何处实例化服务器程序;设置 Connect 属性指定连接字符串以访问数据源;设置 SQL 属性以指定查询命令文本。 然后发出 Refresh 方法,使服务器程序连接到数据源,检索查询指定的行,并将 Recordset 对象返回给客户端。

本教程不使用 RDS.DataControl,但如果使用了,应如下所示:

Sub RDSTutorial2A()  
   Dim DC as New RDS.DataControl  
   DC.Server = "https://yourServer"  
   DC.Connect = "DSN=Pubs"  
   DC.SQL = "SELECT * FROM Authors"  
   DC.Refresh  
...  

本教程也没有使用 ADO 对象调用 RDS,但如果使用了,应如下所示:

Dim rs as New ADODB.Recordset  
rs.Open "SELECT * FROM Authors","Provider=MS Remote;Data Source=Pubs;" & _  
        "Remote Server=https://yourServer;Remote Provider=SQLOLEDB;"  

B 部分 执行此步骤的一般方法是调用 RDSServer.DataFactory 对象 Query 方法。 该方法采用一个连接字符串,用于连接到数据源,以及一个命令文本,用于指定要从数据源返回的行。

本教程使用 DataFactory 对象 Query 方法:

Sub RDSTutorial2B()  
   Dim DS as New RDS.DataSpace  
   Dim DF  
   Dim RS as ADODB.Recordset  
   Set DF = DS.CreateObject("RDSServer.DataFactory", "https://yourServer")  
   Set RS = DF.Query ("DSN=Pubs", "SELECT * FROM Authors")  
...  

另请参阅

步骤 3:服务器获取记录集(RDS 教程)
RDS 教程 (VBScript)