Freigeben über


PackTombstoneKey-Methode

Konvertiert den Zeilenschlüssel aus der angegebenen Tabelle in das Format, das für den Zeilenschlüssel in der Tombstonetabelle verwendet wird.

Namespace:  System.Data.SqlServerCe
Assembly:  System.Data.SqlServerCe (in System.Data.SqlServerCe.dll)

Syntax

'Declaration
Public Function PackTombstoneKey ( _
    tableName As String, _
    columnValues As Object() _
) As Byte()
'Usage
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[]

Parameter

  • columnValues
    Typ: array<System. . :: . .Object> [] () [] []
    Ein Array, das die Spaltenwerte des Zeilenschlüssels enthält.

Rückgabewert

Typ: array<System. . :: . .Byte> [] () [] []
Ein Bytearray, das den Wert des Zeilenschlüssels in der Tombstonetabelle darstellt.

Ausnahmen

Ausnahme Bedingung
ArgumentException

Die angegebene Tabelle ist nicht vorhanden.

-oder-

Für die angegebene Tabelle wurde kein Zeilenschlüssel definiert.

-oder-

Die Anzahl der Elemente in columnValues unterscheidet sich von der Anzahl der Spalten im Zeilenschlüssel, der für die angegebene Tabelle definiert ist.

ArgumentNullException

tableName ist NULL.

-oder-

columnValues ist NULL.

Hinweise

Durch den Zeilenschlüssel wird jede Zeile in einer nachverfolgten Tabelle eindeutig gegenüber dem Nachverfolgungssystem identifiziert. Der Zeilenschlüssel kann entweder der Primärschlüssel der Tabelle oder eine Spalte des Typs uniqueidentifier sein, auf die das ROWGUIDCOL-Attribut (Spalte ROWGUID) angewendet wurde. Der Typ des für eine Tabelle verwendeten Zeilenschlüssels wird angegeben, indem einer der TrackingKeyType-Werte übergeben wird, wenn die Nachverfolgung für die Tabelle aktiviert wird.

Die Tombstonetabelle (__sysOCSDeletedRows) verwendet eine generische Darstellung dieses in der __sysRK-Spalte gespeicherten Werts. Durch die __sysRK-Spalte werden die Daten in der Tombstonetabelle, die einer bestimmten Zeile einer angegebenen nachverfolgten Tabelle zugeordnet ist, eindeutig identifiziert.

Falls der Zeilenschlüssel ein Primärschlüssel ist, der aus einer einzelnen Spalte besteht oder bei dem der Zeilenschlüssel der ROWGUID-Spalte entspricht, sollte das columnValues-Array über ein einziges Element verfügen: den Wert dieser Spalte. Wenn ein Primärschlüssel jedoch aus mehreren Spalten besteht, sollte das columnValues-Array die Werte jeder einzelnen Spalte in der Zeile enthalten, die den Primärschlüssel bilden. Die Spalten sollten im Array in der Reihenfolge positioniert werden, in der sie in der Primärschlüsseldefinition definiert sind; d. h., dass früher in der Primärschlüsseldefinition definierte Spalten einen niedrigeren Index im Array haben sollten als die später definierten Spalten.

Siehe auch

Verweis

SqlCeChangeTracking Klasse

SqlCeChangeTracking-Member

System.Data.SqlServerCe-Namespace

EnableTracking

TrackingKeyType