Click here to view and discuss this page in DocCommentXchange. In the future, you will be sent there automatically.

SQL Anywhere 11.0.1 (中文) » MobiLink - 服务器管理 » MobiLink 服务器 API » 使用 .NET 编写同步脚本 » 用于 .NET 参考的 MobiLink 服务器 API » UploadedTableData 接口

 

GetDeletes 方法

语法

IDataReader GetDeletes();

注释

为此上载表数据获取带有删除操作的 DataReader。每个删除操作均以那些需要唯一代表本实例表中的行的主键值来表示。

注意:各列的索引和顺序与用于该表模式的 DataTable.PrimaryKey 属性数组相匹配。

返回值

带有删除行的主键列的 DataReader。

示例

假定远程客户端包含一个名为 sparse_pk 的表。以下示例使用 DownloadTableData.GetDeletes 方法来获取删除行的数据读取器。在此情况下,删除 datareader 包括两个主键列。注意每个主键列的索引。

CREATE TABLE sparse_pk (
    pcol1  INT NOT NULL,
    col2 VARCHAR(200),
    pcol3 INT NOT NULL,
    PRIMARY KEY (pcol1, pcol3)
);

using iAnywhere.MobiLink.Script;
using System;
using System.IO;
using System.Data;
using System.Text;
...
 
// The method used for the handle_UploadData event.
public void HandleUpload(UploadData ut) {

    // Get an UploadedTableData for the sparse_pk table.
    UploadedTableData sparse_pk_table = ut.GetUploadedTableByName("sparse_pk");

    // Get deletes uploaded by the MobiLink client.
    IDataReader data_reader = sparse_pk_table.GetDeletes();

    while (data_reader.Read()) {
        StringBuilder row_str = new StringBuilder("( ");
        row_str.Append(data_reader.GetString(0)); // pcol1
        row_str.Append(", ");
        row_str.Append(data_reader.GetString(1)); // pcol3
        row_str.Append(" )");
        writer.WriteLine(row_str);
    }
    data_reader.Close();
}