在客户端 代理调用方法时,服务器上的实际程序将执行该方法。 在此步骤中,你将在服务器上执行查询。
重要
从 Windows 8 和 Windows Server 2012 开始,RDS 服务器组件不再包含在 Windows 操作系统中(有关详细信息,请参阅 Windows 8 和 Windows Server 2012 兼容性指南)。 RDS 客户端组件将在将来的 Windows 版本中删除。 避免在新开发工作中使用此功能,并计划修改当前使用此功能的应用程序。 使用 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")
...