重新同步命令 Property-Dynamic (ADO)
指定用户提供的命令字符串,重新同步 方法刷新 唯一表 动态属性中指定的表中的数据。
设置和返回值
设置或返回 字符串 值,即命令字符串。
言论
Recordset 对象是对多个基表执行的 JOIN 操作的结果。 受影响的行取决于 Resync 方法的 AffectRecords 参数。 如果未设置 唯一表 和 重新同步命令 属性,则执行标准 重新同步 方法。
Resync Command 属性的命令字符串是一个参数化命令或存储过程,用于唯一标识要刷新的行,并返回包含与要刷新的行相同的列数和顺序的单个行。 命令字符串包含 唯一表中每个主键列的参数;否则,将返回运行时错误。 参数会自动填充要刷新的行中的主键值。
下面是基于 SQL 的两个示例:
1) 记录集 由命令定义:
SELECT * FROM Customers JOIN Orders ON
Customers.CustomerID = Orders.CustomerID
WHERE city = 'Seattle'
ORDER BY CustomerID
Resync Command 属性设置为:
"SELECT * FROM
(SELECT * FROM Customers JOIN Orders
ON Customers.CustomerID = Orders.CustomerID
city = 'Seattle' ORDER BY CustomerID)
WHERE Orders.OrderID = ?"
唯一表 是 Orders,其主键 OrderID参数化。 子选择提供了一种简单的方式来以编程方式确保原始命令返回的列数和顺序相同。
2) 记录集 由存储过程定义:
CREATE PROC Custorders @CustomerID char(5) AS
SELECT * FROM Customers JOIN Orders ON
Customers.CustomerID = Orders.CustomerID
WHERE Customers.CustomerID = @CustomerID
Resync 方法应执行以下存储过程:
CREATE PROC CustordersResync @ordid int AS
SELECT * FROM Customers JOIN Orders ON
Customers.CustomerID = Orders.CustomerID
WHERE Orders.ordid = @ordid
Resync Command 属性设置为:
"{call CustordersResync (?)}"
再次,唯一表Orders,其主键 OrderID参数化。
当 CursorLocation 属性设置为 adUseClient时,Resync Command 是 Recordset 对象 属性 集合的动态属性。