RDS 教程(VBScript)

这是 RDS 教程,以 Microsoft Visual Basic 脚本版编写。 有关本教程用途的说明,请参阅 RDS 教程

重要

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

在本教程中,RDS。DataControlRDS。DataSpace 是在设计时创建的,也就是说,它们使用对象标记定义,如下所示:<OBJECT>...</OBJECT>。 或者,可以使用 CreateObject 方法(RDS) 方法在运行时创建它们。 例如,可以像下面这样创建RDS.DataControl对象:

Set DC = Server.CreateObject("RDS.DataControl")  
   <!-- RDS.DataControl -->  
   <OBJECT   
      ID="DC1" CLASSID="CLSID:BD96C556-65A3-11D0-983A-00C04FC29E33">  
   </OBJECT>  
  
   <!-- RDS.DataSpace -->  
   <OBJECT   
      ID="DS1" WIDTH=1 HEIGHT=1  
      CLASSID="CLSID:BD96C556-65A3-11D0-983A-00C04FC29E36">  
   </OBJECT>  
  
   <SCRIPT LANGUAGE="VBScript">  
  
   Sub RDSTutorial()  
   Dim DF1   

步骤 1 - 指定服务器程序

VBScript 可以通过访问可供 Active Server Pages 使用的 VBScript Request.ServerVariables 方法来发现它正在运行的 IIS Web 服务器的名称:

"https://<%=Request.ServerVariables("SERVER_NAME")%>"  

但是,对于本教程,请使用虚构服务器“yourServer”。

注意

请注意 ByRef 参数的数据类型。 VBScript 不允许指定变量类型,因此必须始终传递 Variant。 使用 HTTP 时,如果通过 RDS.DataSpace 对象的 CreateObject 方法调用,RDS 将允许您将 Variant 传递给需要非 Variant 的方法。 使用 DCOM 或进程内服务器时,必须与客户端和服务器端的参数类型匹配,否则将收到“类型不匹配”错误。

Set DF1 = DS1.CreateObject("RDSServer.DataFactory", "https://yourServer")  

步骤 2a - 使用 RDS.DataControl 调用服务器程序。

此示例只是一个注释,演示 RDS 的默认行为。DataControl 是执行指定的查询。

<OBJECT CLASSID="clsid:BD96C556-65A3-11D0-983A-00C04FC29E33" ID="DC1">  
   <PARAM NAME="SQL" VALUE="SELECT * FROM Authors">  
   <PARAM NAME="Connect" VALUE="DSN=Pubs;">  
   <PARAM NAME="Server" VALUE="https://yourServer/">  
</OBJECT>  
...  
<SCRIPT LANGUAGE="VBScript">  
  
Sub RDSTutorial2A()  
   Dim RS  
   DC1.Refresh  
   Set RS = DC1.Recordset  
...  

步骤 2b - 使用 RDSServer.DataFactory 调用服务器程序

步骤 3 - 服务器获取记录集

步骤 4 - 服务器返回记录集

Set RS = DF1.Query("DSN=Pubs;", "SELECT * FROM Authors")  

步骤 5 - 可通过视觉控件使用 DataControl

' Assign the returned recordset to the DataControl.  
  
DC1.SourceRecordset = RS  

步骤 6a - 使用 RDS 将更改发送到服务器。DataControl

此示例仅仅是一个演示性注释,展示了RDS.DataControl如何执行更新。

<OBJECT CLASSID="clsid:BD96C556-65A3-11D0-983A-00C04FC29E33" ID="DC1">  
   <PARAM NAME="SQL" VALUE="SELECT * FROM Authors">  
   <PARAM NAME="Connect" VALUE="DSN=Pubs;">  
   <PARAM NAME="Server" VALUE="https://yourServer/">  
</OBJECT>  
...  
<SCRIPT LANGUAGE="VBScript">  
  
Sub RDSTutorial6A()  
Dim RS  
DC1.Refresh  
...  
Set RS = DC1.Recordset  
' Edit the Recordset object...  
' The SERVER and CONNECT properties are already set from Step 2A.  
Set DC1.SourceRecordset = RS  
...  
DC1.SubmitChanges  

步骤 6b - 使用 RDSServer.DataFactory 将更改发送到服务器

DF.SubmitChanges "DSN=Pubs", RS  
  
End Sub  
</SCRIPT>  
</BODY>  
</HTML>  

这是本教程的结尾。

另请参阅

RDS 教程