Sub RDSTutorial6A()
Dim RS as New ADODB.Recordset
DC1.Refresh
...
Set RS = DC1.Recordset
' 编辑记录集对象...
' SERVER 和 CONNECT 属性已经在步骤 2A 中设置。
Set DC1.SourceRecordset = RS
...
DC1.SubmitChanges
Sub RDSTutorial2A()
Dim DC as New RDS.DataControl
DC.Server = "http://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=http://YourServer"
B 部分 执行该步骤的一般方法是调用 RDSServer.DataFactory 对象的 Query 方法。该方法使用用于连接数据源的连接字符串,以及用于指定从数据源返回行的命令文本。
该教程使用 RDSServer.DataFactory Query 方法:
Sub RDSTutorial2B()
Dim DS as New RDS.DataSpace
Dim DF
Dim RS as ADODB.Recordset
Set DF = DS.CreateObject("RDSServer.DataFactory", "http://yourServer")
Set RS = DF.Query ("DSN=pubs", "SELECT * FROM authors")
...
服务器程序使用连接字符串和命令文本在数据源查询所需的行。尽管也可以使用其他 Microsoft 数据访问接口如 OLE DB 等,但一般使用 ADO 检索该 Recordset。有关执行查询操作的详细信息,请参阅 ADO 教程。
自定义服务器程序可参照如下:
Public Function ServerProgram(conn as String, qry as String) as Object
Dim rs as New ADODB.Recordset
rs.CursorLocation = adUseClient
rs.Open cn, qry, adOpenUnspecified, adLockUnspecified, _
adCmdUnspecified
Set ServerProgram = rs
End Function
Sub RDSTutorial4()
Dim DS as New RDS.DataSpace
Dim RS as New ADODB.Recordset '可选择 ADOR.Recordset
Dim DF as Object
Set DF = DS.CreateObject("RDSServer.DataFactory", "http://yourServer")
Set RS = DF.Query("DSN=pubs", "SELECT * FROM authors")
...
Sub RDSTutorial5()
Dim DS as New RDS.DataSpace
Dim RS as New ADODB.Recordset '可选择 ADOR.Recordset
Dim DC as New RDS.DataControl
Dim DF as Object
Set DF = DS.CreateObject("RDSServer.DataFactory", "http://yourServer")
Set RS = DF.Query ("DSN=pubs", "SELECT * FROM authors")
DC.SourceRecordset = RS '可视控件现在可绑定到 DC。
...
注意 RDS 的默认行为可通过 ADO 对象和 MS 远程提供者隐式调用。查询可返回记录集,而被编辑的记录集则可更新数据源。本教程不通过 ADO 对象调用 RDS,但在这里给出它的形式:
Dim rs as New ADODB.Recordset
rs.Open "SELECT * FROM authors", "Provider=MS Remote;Data Source=pubs;Remote Server=http://YourServer"
... '编辑记录集
rs.UpdateBatch '与 SubmitChanges 等值
...
A 部分 假设在这里只使用了 RDS.DataControl 并且 Recordset 对象现在已与 RDS.DataControl 关联。如果 Server 和 Connect 属性已设置,SubmitChanges 方法将把对 Recordset 对象的任何改动更新到数据源。
Sub RDSTutorial6A()
Dim DC as New RDS.DataControl
Dim RS as New ADODB.Recordset '可选择 ADOR.Recordset
DC.Server = "http://yourServer"
DC.Connect = "DSN=pubs"
DC.SQL = "SELECT * FROM authors"
DC.Refresh
...
Set RS = DC.Recordset
... '编辑记录集
...
DC.SubmitChanges
...
B 部分 另外,您也可以通过指定连接和 Recordset 对象,使用 RDSServer.DataFactory 对象更新服务器。
Sub RDSTutorial6B()
Dim DS as New RDS.DataSpace
Dim RS as New ADODB.Recordset '可选择 ADOR.Recordset
Dim DC as New RDS.DataControl
Dim DF as Object
Set DF = DS.CreateObject("RDSServer.DataFactory", "http://yourServer")
Set RS = DF.Query ("DSN=pubs", "SELECT * FROM authors")
DC.SourceRecordset = RS '可视控件现在可绑定到 DC.
... '编辑 Recordset
blnStatus = DF.SubmitChanges "DSN=pubs", RS