JET_COLUMNDEF-Struktur
Letzte Änderung: Freitag, 27. Februar 2015
Gilt für: Windows | Windows Server
JET_COLUMNDEF-Struktur
Die Struktur JET_COLUMNDEF definiert die Daten, die in einer Spalte gespeichert werden können.
typedef struct {
unsigned long cbStruct;
JET_COLUMNID columnid;
JET_COLTYP coltyp;
unsigned short wCountry;
unsigned short langid;
unsigned short cp;
unsigned short wCollate;
unsigned long cbMax;
JET_GRBIT grbit;
} JET_COLUMNDEF;
Mitglieder
cbStruct
Die Größe der Struktur in Byte. Es muss auf Sizeof (JET_COLUMNDEF) festgelegt werden.
Spalten-ID
Reserviert. Spalten-ID muss auf 0 (null) festgelegt werden.
coltyp
Der Typ der Spalte (beispielsweise Text, Binär- oder numerische). Weitere Informationen finden Sie unter JET_COLTYP.
wCountry
Reserviert. wCountry muss auf 0 (null) festgelegt werden.
;LANGID
Veraltet. LangID sollte auf 0 (null) festgelegt werden.
CP-Werts
Die Codepage für die Spalte. Die einzige gültige Werte für Textspalten sind Englisch (1252) und Unicode (1200). Der Wert 0 bedeutet, dass die Standardeinstellung werden (Englisch, 1252) verwendet. Wenn die Spalte keine Textspalte ist, ruft Codepage automatisch auf 0 (null) festgelegt.
wCollate
Reserviert. wCollate muss auf 0 (null) festgelegt werden.
cbMax
Die maximale Länge in Bytes einer Spalte variabler Länge oder die Länge einer Spalte mit fester Länge.
JET_errInvalidGrbit
Eine Gruppe von Bits an, die die Optionen für dieses Anrufs zu verwendende enthalten, die NULL oder mehrere der folgenden Werte enthalten.
Wert |
Bedeutung |
---|---|
JET_bitColumnFixed |
Die Spalte wird behoben werden. Verwenden sie immer den gleichen Speicherplatz in einer Zeile, unabhängig davon, wie viele Daten in der Spalte gespeichert wird. JET_bitColumnFixed kann nicht mit JET_bitColumnTagged verwendet werden. Dieses Bit kann nicht mit langen Werten (das JET_coltypLongText und JET_coltypLongBinary) verwendet werden. |
JET_bitColumnTagged |
Die Spalte werden gekennzeichnet. Markierte Spalten werden keine Speicherplatz in der Datenbank, wenn sie keine Daten enthalten. Dieses Bit kann nicht mit JET_bitColumnFixed verwendet werden. |
JET_bitColumnNotNULL |
Die Spalte muss niemals auf einen NULL-Wert festgelegt werden. |
JET_bitColumnVersion |
Die Spalte ist eine Spalte Version, die die Version der Zeile angibt. Der Wert dieser Spalte beginnt mit 0 (null) und wird für jedes Update in der Zeile automatisch erhöht. Dieses Bit kann nur auf JET_coltypLong Spalten angewendet werden. Dieses Bit kann nicht mit JET_bitColumnAutoincrement, JET_bitColumnEscrowUpdate oder JET_bitColumnTagged verwendet werden. |
JET_bitColumnAutoincrement |
Die Spalte wird automatisch erhöht. Die Anzahl ist eine zunehmende Anzahl, und es wird sichergestellt, dass in einer Tabelle eindeutig sein. Die Zahlen möglicherweise jedoch nicht zusammenhängend sein. Wenn fünf Zeilen in einer Tabelle eingefügt werden, kann die Spalte "Autoincrement" beispielsweise die Werte {1, 2, 6, 7, 8} enthalten. Dieses Bit kann nur auf Spalten vom Typ JET_coltypLong oder JET_coltypCurrencyverwendet werden. Windows 2000:In Windows 2000 kann nur dieses Bit auf Spalten vom Typ JET_coltypLongverwendet werden. |
JET_bitColumnUpdatable |
Dieses Bit ist nur für Aufrufe der JetGetColumnInfogültig. |
JET_bitColumnTTKey |
Dieses Bit ist nur für Aufrufe der JetOpenTablegültig. |
JET_bitColumnTTDescending |
Dieses Bit ist nur für Aufrufe der JetOpenTempTablegültig. |
JET_bitColumnMultiValued |
Die Spalte kann mit mehreren Werten entsprechen. Eine mehrwertige Spalte kann 0 (null), eine oder mehrere Werte zugeordnet haben. Der verschiedenen Werte in einer Spalte mit mehreren Werten werden durch eine Zahl bezeichnet den ItagSequence -Member, die zu verschiedenen Strukturen, einschließlich gehört identifiziert: JET_RETINFO, JET_SETINFO, JET_SETCOLUMN, JET_RETRIEVECOLUMNund JET_ENUMCOLUMNVALUE. Mehrwertige Spalten müssen markierte Spalten sein. d. h., sie Spalten mit fester Länge oder variabler Länge nicht möglich. |
JET_bitColumnEscrowUpdate |
Gibt an, dass eine Spalte eine Spalte des hinterlegten Update ist. Eine hinterlegten Update Spalte Zukunft kann gleichzeitig von verschiedenen Sitzungen mit JetEscrowUpdate aktualisiert werden und in Transaktionskonsistenz. Eine hinterlegten Update Spalte muss außerdem die folgenden Bedingungen erfüllen:
|
JET_bitColumnUnversioned |
Die Spalte erstellt werden ein ohne Versionsinformationen. Dies bedeutet, dass andere Transaktionen, die versuchen, eine Spalte mit dem gleichen Namen hinzufügen schlägt fehl. Dieses Bit ist nur mit JetAddColumnhilfreich. Es kann nicht innerhalb einer Transaktion verwendet werden. |
JET_bitColumnMaybeNull |
Für die zukünftige Verwendung reserviert. |
JET_bitColumnFinalize |
Verwenden Sie anstelle von JET_bitColumnFinalize JET_bitColumnDeleteOnZero. JET_bitColumnFinalize, dass eine Spalte abgeschlossen werden kann. Wenn eine Spalte, die abgeschlossen werden kann eine hinterlegten Update-Spalte, die 0 (null) erreicht aufweist, wird die Zeile gelöscht. Zukünftige Versionen möglicherweise Ruft eine Rückruffunktion stattdessen (Weitere Informationen finden Sie unter JET_CALLBACK). Eine Spalte, die Finalisierung kann muss eine hinterlegten Update-Spalte. JET_bitColumnFinalize kann nicht mit JET_bitColumnUserDefinedDefault verwendet werden. |
JET_bitColumnUserDefinedDefault |
Der Standardwert für eine Spalte wird durch eine Rückruffunktion bereitgestellt werden. Finden Sie unter JET_CALLBACK. Eine Spalte, die eine standardmäßige benutzerdefinierte hat, muss eine markierte Spalte. Angeben von JET_bitColumnUserDefinedDefault bedeutet, dass PvDefault muss auf eine Struktur JET_USERDEFINEDDEFAULT und CbDefault auf Sizeof ( JET_USERDEFINEDDEFAULT ) festgelegt werden muss.
|
JET_bitColumnDeleteOnZero |
Die Spalte ist eine Spalte des hinterlegten aktualisieren, und wenn er 0 (null) erreicht, wird der Datensatz gelöscht. Häufig verwendet für eine Spalte, die Finalisierung kann ist, verwenden Sie es als Referenz Count Feld, und wenn das Feld Null erreicht, die der Datensatz gelöscht wird. JET_bitColumnDeleteOnZero ist JET_bitColumnFinalize verknüpft. Eine Spalte löschen auf NULL, muss eine hinterlegten Update-Spalte. JET_bitColumnDeleteOnZero kann nicht mit JET_bitColumnFinalize verwendet werden. JET_bitColumnDeleteOnZero kann nicht mit der benutzerdefinierten Spalten verwendet werden. |
Voraussetzungen
-Client, |
Erfordert Windows Vista, Windows XP oder Windows 2000 Professional. |
Server |
WindowsServer 2008, WindowsServer 2003 oder Windows 2000 Server benötigt. |
Kopfzeile |
In Esent.h deklariert. |
Siehe auch
JET_CALLBACK
JET_COLTYP
JET_COLUMNCREATE
JET_COLUMNID
JET_GRBIT
JET_USERDEFINEDDEFAULT
JetAddColumn
JetEscrowUpdate
JetGetTableColumnInfo
JetOpenTempTable
JetOpenTempTable2
JetOpenTempTable3
JetRenameColumn