DataControl 物件 (RDS)

將資料查詢 Recordset 系結至一或多個控制項 (,例如文字方塊、格線控制項或下拉式方塊) ,以在網頁上顯示 Recordset 資料。

重要

從Windows 8和Windows Server 2012開始,Windows 作業系統中不再包含 RDS 伺服器元件 (請參閱 Windows 8 和Windows Server 2012 Compatibility Cookbook以取得詳細資料) 。 RDS 用戶端元件將在未來的 Windows 版本中移除。 請避免在新的開發工作中使用這項功能,並規劃修改目前使用這項功能的應用程式。 使用 RDS 的應用程式應該移轉至 WCF 資料服務

語法

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

備註

RDS 的類別識別碼 。DataControl 物件是 BD96C556-65A3-11D0-983A-00C04FC29E33。

注意

如果您收到 RDS 的錯誤。DataSpaceRDS。DataControl 物件不會載入,請確定您使用的是正確的類別識別碼。 這些物件的類別識別碼已從 1.0 版和 1.1 版變更。 此外,請注意,當您使用 RDS DataControl 物件時,甚至必須設定可為 Null 的資料行。

在基本案例中,您只需要設定 RDS 的 SQLConnectServer 屬性 。DataControl 物件,其會自動呼叫預設商務物件 RDSServer.DataFactory

RDS 中的所有屬性。DataControl 是選擇性的,因為自訂商務物件可以取代其功能。

注意

如果您查詢多個結果,只會傳回第一個 Recordset 。 如果需要多個結果集,請將每個結果集指派給自己的 DataControl。 查詢多個結果的範例如下: "Select * from Authors, Select * from Topics"

當您使用 RDS 時,將 「DFMode=20;」 新增至連接字串 。當您更新資料時,DataControl 物件可以改善伺服器的效能。 透過此設定,伺服器上的 RDSServer.DataFactory 物件會使用較少的資源密集模式。 不過,此設定無法使用下列功能:

  • 使用參數化查詢。

  • 先取得參數或資料行資訊,再呼叫 Execute 方法。

  • Transact 更新設定為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=MyPassword;">  
   <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 數目沒有計數限制 。您可以在 單一網頁上使用 OBJECT 標記來內嵌的 DataControl 物件。

當您定義 RDS 時。網頁上的 DataControl 物件使用非零 高度Width 值,例如 1 (,以避免包含額外的空間) 。

遠端資料服務用戶端元件已包含在 Internet Explorer 4.0 中;因此,您不需要在 RDS 中包含 CODEBASE 參數 。DataControl 物件標籤。

使用 Internet Explorer 4.0 或更新版本時,只有當 HTML 控制項和 ActiveX® 控制項標示為 Apartment 模型控制項時,才可以系結至資料。

注意

Microsoft Visual Basic 使用者RDS。DataControl適用于腳本,而且僅適用于 Web 應用程式。 Visual Basic 用戶端應用程式不需要它。

本節包含下列主題。

另請參閱

DataControl 物件範例 (VBScript)