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. |