PackTombstoneKey 方法

将指定表中的行键转换为用于逻辑删除表中的行键的格式。

命名空间:  System.Data.SqlServerCe
程序集:  System.Data.SqlServerCe(在 System.Data.SqlServerCe.dll 中)

语法

声明
Public Function PackTombstoneKey ( _
    tableName As String, _
    columnValues As Object() _
) As Byte()
用法
Dim instance As SqlCeChangeTracking
Dim tableName As String
Dim columnValues As Object()
Dim returnValue As Byte()

returnValue = instance.PackTombstoneKey(tableName, _
    columnValues)
public byte[] PackTombstoneKey(
    string tableName,
    Object[] columnValues
)
public:
array<unsigned char>^ PackTombstoneKey(
    String^ tableName, 
    array<Object^>^ columnValues
)
member PackTombstoneKey : 
        tableName:string * 
        columnValues:Object[] -> byte[] 
public function PackTombstoneKey(
    tableName : String, 
    columnValues : Object[]
) : byte[]

参数

返回值

类型:array<System. . :: . .Byte> [] () [] []
表示逻辑删除表中的行键的值的字节数组。

异常

异常 条件
ArgumentException

指定的表不存在

- 或 -

没有为指定的表定义任何行键。

- 或 -

columnValues 中的元素数目与为指定表定义的行键中的列数不同。

ArgumentNullException

tableName 为 null

- 或 -

columnValues 为 null

注释

行键向跟踪系统唯一标识跟踪表中的每一行。行键可以是表的主键或类型为 uniqueidentifier 且应用了 ROWGUIDCOL 属性的列(ROWGUID 列)。将通过在对表启用跟踪时传递 TrackingKeyType 的值之一来指定用于该表的行键的类型。

逻辑删除表 (__sysOCSDeletedRows) 使用存储在 __sysRK 列中的该值的一般表示形式。__sysRK 列唯一标识逻辑删除表中与特定跟踪表的特定行关联的数据。

当行键为主键且由单个列构成或行键为 ROWGUID 列时,columnValues 数组应具有单个元素:该列的值。然而,如果主键包含多个列,则 columnValues 数组应包含该行中构成主键的每列的值。这些列在数组中的位置应遵循在主键定义中定义它们的顺序;也即,在主键定义中较早定义的列在数组中应比在其之后定义的列具有较低的索引。

请参阅

参考

SqlCeChangeTracking类

SqlCeChangeTracking 成员

System.Data.SqlServerCe 命名空间

EnableTracking

TrackingKeyType