JET_SETCOLUMN-Struktur

Gilt für: Windows | Windows Server

JET_SETCOLUMN-Struktur

Die JET_SETCOLUMN-Struktur enthält Eingabe- und Ausgabeparameter für JetSetColumns. Felder in der -Struktur beschreiben, welchen Spaltenwert festgelegt werden soll, wie er festgelegt wird und wo die Spaltensatzdaten abgerufen werden.

    typedef struct {
      JET_COLUMNID columnid;
      const void* pvData;
      unsigned long cbData;
      JET_GRBIT grbit;
      unsigned long ibLongValue;
      unsigned long itagSequence;
      JET_ERR err;
    } JET_SETCOLUMN;

Member

Columnid

Der Spaltenbezeichner für eine festzulegende Spalte.

pvData

Ein Zeiger auf Daten, die in einer Spalte festgelegt werden sollen.

cbData

Die Größe der Zuordnung in Bytes, beginnend bei pvData in Bytes.

grbit

Eine Gruppe von Bits, die die Optionen enthalten, die für diesen Aufruf verwendet werden sollen, einschließlich 0 oder mehr der folgenden Optionen.

Wert

Bedeutung

JET_bitSetAppendLV

Fügt Daten an eine Spalte vom Typ JET_coltypLongText oder JET_coltypLongBinary an. Das gleiche Verhalten kann erreicht werden, indem die Größe des vorhandenen long-Werts bestimmt und ibLongValue in psetinfo angegeben wird. Es ist jedoch einfacher, dieses Grbit zu verwenden, da es nicht erforderlich ist, die Größe des vorhandenen Spaltenwerts zu kennen.

JET_bitSetOverwriteLV

Ersetzt den vorhandenen long-Wert durch die neuen Daten. Wenn diese Option verwendet wird, ist es so, als ob der vorhandene long-Wert vor dem Festlegen der neuen Daten auf die Länge 0 (Null) festgelegt wurde.

JET_bitSetSizeLV

Interpretiert den Eingabepuffer als ganzzahlige Anzahl von Bytes, die als Länge des langen Werts festgelegt werden soll, der von der angegebenen columnid beschrieben wird, und falls angegeben, der Sequenznummer in psetinfo-itagSequence>. Wenn die angegebene Größe größer als der vorhandene Spaltenwert ist, wird die Spalte um 0s erweitert. Wenn die Größe kleiner als der vorhandene Spaltenwert ist, wird der Wert abgeschnitten.

JET_bitSetZeroLength

Legt einen Wert auf die Länge null fest. Normalerweise wird ein Spaltenwert auf NULL festgelegt, indem eine cbMax von 0 übergeben wird. Für einige Typen, z . B. JET_coltypText, kann ein Spaltenwert jedoch 0 statt NULL lang sein, und diese Option wird verwendet, um zwischen der Länge NULL und 0 zu unterscheiden.

JET_bitSetSeparateLV

Erzwingt, dass ein long-Wert, Spalten vom Typ JET_coltypLongText oder JET_coltypLongBinary, getrennt von den restlichen Datensatzdaten gespeichert wird. Dies tritt normalerweise auf, wenn die Größe des long-Werts verhindert, dass er mit den verbleibenden Datensatzdaten gespeichert wird. Diese Option kann jedoch verwendet werden, um zu erzwingen, dass der long-Wert separat gespeichert wird. Beachten Sie, dass lange Werte, die vier Bytes groß oder kleiner sind, nicht erzwungen werden können, getrennt zu sein. In solchen Fällen wird die Option ignoriert.

JET_bitSetUniqueMultiValues

Erzwingt unterschiedliche Werte in einer mehrwertigen Spalte. Mit dieser Option werden die Quellspaltendaten ohne Transformationen mit anderen vorhandenen Spaltenwerten verglichen, und es wird ein Fehler zurückgegeben, wenn ein Duplikat gefunden wird. Wenn diese Option angegeben ist, können nicht auch JET_bitSetAppendLv, JET_bitSetOverwriteLV und JET_bitSetSizeLV angegeben werden.

JET_bitSetUniqueNormalizedMultiValues

Erzwingt unterschiedliche Werte in einer mehrwertigen Spalte. Diese Option vergleicht die schlüsselnormalisierte Transformation von Spaltendaten mit anderen ähnlich transformierten vorhandenen Spaltenwerten, und es wird ein Fehler zurückgegeben, wenn ein Duplikat gefunden wird. Wenn diese Option angegeben ist, können nicht auch JET_bitSetAppendLv, JET_bitSetOverwriteLV und JET_bitSetSizeLV angegeben werden.

JET_bitSetRevertToDefaultValue

Bewirkt, dass die Spalte bei nachfolgenden Abrufspaltenvorgängen den Standardspaltenwert zurückgibt. Alle vorhandenen Spaltenwerte werden entfernt. Diese Option gilt nur für markierte, sparse oder mehrwertige Spalten.

JET_bitSetIntrinsicLV

Behält den long-Wert, die Spalten vom Typ JET_coltypLongText oder JET_coltypeLongBinary bei, die nach Möglichkeit mit den verbleibenden Datensatzdaten gespeichert werden. Normalerweise werden lange Spalten separat gespeichert, wenn ihre Länge 1.024 Bytes überschreitet oder dies andernfalls dazu führen würde, dass die Datensatzlänge die Größenbeschränkung der Seitengröße überschreitet. Wenn diese Option jedoch festgelegt ist, schlägt der Vorgang zum Festlegen von Spalten mit einem Fehler JET_errColumnTooBig fehl, anstatt diesen Spaltenwert getrennt von den verbleibenden Datensatzdaten zu speichern.

ibLongValue

Der Offset zum ersten Byte, das aus einer Spalte vom Typ JET_coltypLongBinary oder JET_coltypLongText abgerufen werden soll.

itagSequence

Beschreibt die Sequenznummer des Werts in einer mehrwertigen Spalte. Eine itagSequence von 0 gibt an, dass der Spaltenwertsatz als neue instance einer mehrwertigen Spalte hinzugefügt werden soll.

err

Fehlercodes und Warnungen, die vom Vorgang zum Festlegen von Spalten zurückgegeben werden.

Anforderungen

Anforderung Wert

Client

Erfordert Windows Vista, Windows XP oder Windows 2000 Professional.

Server

Erfordert Windows Server 2008, Windows Server 2003 oder Windows 2000 Server.

Kopfzeile

Deklariert in Esent.h.

Weitere Informationen

JET_COLTYP
JET_COLUMNID
JET_ERR
JET_GRBIT
JetSetColumns