DataControl 对象 (RDS)

将数据查询 Recordset 绑定到一个或多个控件(例如文本框、网格控件或组合框),以显示网页上 记录集 数据。

重要

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

语法

  
<OBJECT CLASSID="clsid:BD96C556-65A3-11D0-983A-00C04FC29E33" ID="DataControl"  
   <PARAM NAME="Connect" VALUE="DSN=DSNName;UID=MyUserID;PWD=<password>;">  
   <PARAM NAME="Server" VALUE="https://awebsrvr">  
   <PARAM NAME="SQL" VALUE="QueryText">  
</OBJECT>  

言论

RDS 的类 ID。DataControl 对象为 BD96C556-65A3-11D0-983A-00C04FC29E33。

注意

如果收到 RDS 的错误。DataSpaceRDS。DataControl 对象不会加载,请确保使用正确的类 ID。 这些对象的类 ID 已从版本 1.0 和 1.1 更改。 此外,请注意,在使用 RDS DataControl 对象时,甚至必须设置可以为 null 的列。

对于基本方案,只需设置 SQLConnect,以及 ServerRDS 属性。DataControl 对象,该对象将自动调用默认业务对象,RDSServer.DataFactory

RDS 中的所有属性。DataControl 是可选的,因为自定义业务对象可以替换其功能。

注意

如果查询多个结果,则只返回第一个 Recordset。 如果需要多个结果集,请将每个结果集分配给其自己的 DataControl。 针对多个结果的查询示例如下:"Select * from Authors, Select * from Topics"

使用 RDS 时,将“DFMode=20;”添加到连接字符串。更新数据时,DataControl 对象可以提高服务器的性能。 通过此设置,服务器上的 RDSServer.DataFactory 对象使用资源密集型较少的模式。 但是,此配置中不提供以下功能:

  • 使用参数化查询。

  • 在调用 Execute 方法之前获取参数或列信息。

  • 事务处理更新 设置为 True

  • 获取行状态。

  • 调用 Resync 方法。

  • 通过 Update Resync 属性刷新(显式或自动)。

  • 设置 命令Recordset 属性。

  • 使用 adCmdTableDirect

RDS。默认情况下,DataControl 对象以异步模式运行。 如果需要应用程序的同步执行,请将 ExecuteOptions 参数设置为等于 adcExecSync,并将 FetchOptions 参数设置为等于 adcFetchUpFront,如以下示例所示。

<OBJECT CLASSID="clsid:BD96C556-65A3-11D0-983A-00C04FC29E33"   
    ID="DataControl"  
   <PARAM NAME="Connect" VALUE="DSN=DSNName;UID=MyUserID;PWD=<password>;">  
   <PARAM NAME="Server" VALUE="https://awebsrvr">  
   <PARAM NAME="SQL" VALUE="QueryText">  
   <PARAM NAME="ExecuteOptions" VALUE="1">   <PARAM NAME="FetchOptions" VALUE="1">  
</OBJECT>  

使用一个 RDS。DataControl 对象,用于将单个查询的结果链接到一个或多个视觉控件。 例如,假设你编码一个查询,请求客户数据,例如姓名、居住地、出生地、年龄和优先级客户状态。 可以使用单个 RDS。DataControl 对象,用于在三个单独的文本框中显示客户的“名称”、“年龄”和“区域”;复选框中的优先级客户状态;和网格控件中的所有数据。

使用不同的 RDS。DataControl 对象,用于将多个查询的结果链接到不同的视觉控件。 例如,假设你使用一个查询来获取有关客户的信息,另一个查询用于获取有关客户购买的商品的信息。 你想要在三个文本框和一个复选框中显示第一个查询的结果,以及网格控件中第二个查询的结果。 如果使用默认业务对象(RDSServer.DataFactory),则必须执行以下操作:

  • 添加两个 RDS。DataControl 网页中的对象。

  • 为两个 RDS 的每个 SQL 属性编写两个查询。DataControl 对象。 一个 RDS。DataControl 对象将包含请求客户信息的 SQL 查询;第二个查询将包含请求客户购买的商品列表的查询。

  • 在每个绑定控件的 OBJECT 标记中,指定要在每个视觉对象控件中显示的数据的值的 DATAFLD 值。

RDS 的 数量没有计数限制。DataControl 可以使用 OBJECT 标记在单个网页上嵌入的对象。

定义 RDS 时。网页上的 DataControl 对象,使用非零 高度Width 值(如 1)(以避免包含额外空间)。

远程数据服务客户端组件已包含在 Internet Explorer 4.0 中;因此,无需在 RDS 中包含 CODEBASE 参数。DataControl 对象标记。

使用 Internet Explorer 4.0 或更高版本,仅当 HTML 控件和 ActiveX 控件被标记为单元模型控件时,才能绑定到数据。

注意

Microsoft Visual Basic 用户RDS。DataControl 对于脚本是安全的,仅在基于 Web 的应用程序中使用。 Visual Basic 客户端应用程序不需要它。

本节包含以下主题。

另请参阅

DataControl 对象示例 (VBScript)