您所在的步骤...
? | 指定在服务器上调用的程序,并获得代理。 |
? | 调用服务器程序,将参数传递给表明数据源和所发命令的服务器程序。 |
? | 较为典型的是通过使用 ADO,服务器程序从数据源获得 Recordset 对象。 |
? | 服务器程序将最终的 Recordset 对象返回客户端应用程序。 |
? | 在客户端,可选择将 Recordset 对象置为易于可视控件使用的形式。 |
? | 将对 Recordset 对象的更改返回服务器并用来更新数据源。 |
讨论
如果对 Recordset 对象进行编辑,任何更改(即对行的增加、修改或删除)都可以返回服务器。
注意 TRDS 的默认行为可通过 ADO 对象和 Microsoft OLE DB Remoting Provider 隐式调用。查询可返回记录集,而被编辑的记录集则可更新数据源。本教程不通过 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 and 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
... '编辑 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
本教程到此结束。