JET_TABLECREATE2-Struktur

Gilt für: Windows | Windows Server

JET_TABLECREATE2-Struktur

Die JET_TABLECREATE2-Struktur enthält die Informationen, die zum Erstellen einer Tabelle erforderlich sind, die mit Spalten und Indizes in einer ESE-Datenbank aufgefüllt wird und die eine Rückruffunktion bestimmt. Die JET_TABLECREATE2 wird von JetCreateTableColumnIndex2 verwendet.

Windows XP: Die JET_TABLECREATE2-Struktur wird in xp Windows eingeführt.

    typedef struct tagJET_TABLECREATE2 {
      unsigned long cbStruct;
      tchar* szTableName;
      tchar* szTemplateTableName;
      unsigned long ulPages;
      unsigned long ulDensity;
      JET_COLUMNCREATE* rgcolumncreate;
      unsigned long cColumns;
      JET_INDEXCREATE* rgindexcreate;
      unsigned long cIndexes;
      tchar* szCallback;
      JET_CBTYP cbtyp;
      JET_GRBIT grbit;
      JET_TABLEID tableid;
      unsigned long cCreated;
    } JET_TABLECREATE2;

Member

cbStruct

Die Größe dieser Struktur in Bytes (für zukünftige Erweiterungen). Sie muss auf sizeof( JET_TABLECREATE2 ) in Bytes festgelegt werden.

szTableName

Der Name der zu erstellenden Tabelle.

Der Name muss folgende Bedingungen erfüllen:

  • Der Wert ist kleiner als JET_cbNameMost, ohne den beendenden NULL-Wert.
  • Sie bestehen aus den folgenden Zeichen: 0 bis 9, A bis Z, a bis z und alle anderen Interpunktionen mit Ausnahme von Ausrufezeichen ( ), Komma (,), öffnenden eckigen Klammern () und schließenden Klammern (), d. h. ASCII-Zeichen 0x20, 0x22 bis ! [ ] 0x2d, 0x2f bis 0x5a, 0x5c und 0x5d bis 0x7f.
  • Beginnen Sie nicht mit einem Leerzeichen.
  • Besteht aus mindestens einem Zeichen, das kein Leerzeichen ist.

szTemplateTableName

Der Name einer bereits vorhandenen Tabelle, von der die Basis-DDL (Data Definition Language) geerbt werden soll. Die Verwendung einer Vorlagentabelle ermöglicht die einfache Erstellung vieler Tabellen mit identischen Spalten und Indizes.

ulPages

Die anfängliche Anzahl von Datenbankseiten, die der Tabelle zuteilen sind. Wenn Sie eine Zahl angeben, die größer als 1 ist, kann die Fragmentierung reduziert werden, wenn viele Zeilen in diese Tabelle eingefügt werden.

ulDensity

Die Tabellendichte in Prozent. Die Zahl muss entweder 0 oder im Bereich von 20 bis 100 liegen. Das Übergeben von 0 bedeutet, dass der Standardwert verwendet werden soll. Der Standardwert beträgt 80.

rgcolumncreate

Ein Array JET_COLUMNCREATE Strukturen, die jeweils einer Spalte entsprechen, die in der neuen Tabelle erstellt werden soll.

cColumns

Die Anzahl der JET_COLUMNCREATE in rgcolumncreate.

rgindexcreate

Ein Array JET_INDEXCREATE Strukturen, die jeweils einem Index entsprechen, der in der neuen Tabelle erstellt werden soll.

cIndexes

Die Anzahl der JET_INDEXCREATE in rgindexerzeugen.

szCallback

Die Funktion, die während bestimmter Ereignisse aufgerufen wird. cbtyp bestimmt, wann die Rückruffunktion aufgerufen wird.

Das Format von szCallback muss "Modulfunktion" lauten. "alpha beta" bezieht sich beispielsweise auf die Betafunktion im Modul ! mit dem Namen ! "alpha". Der Prototyp der Funktion muss mitJET_CALLBACK. Weitere Informationen finden Sie unter JET_CALLBACK.

cbtyp

Beschreibt den Typ der Rückruffunktion, die von szCallback festgelegt wird. Weitere Informationen finden Sie unter JET_CBTYP. Dieses Bitfeld besteht aus mindestens einem der folgenden Bits.

Wert

Bedeutung

JET_cbtypFinalize

Die Rückruffunktion wird aufgerufen, wenn eine Spalte, die finalisiert werden kann, auf 0 (null) gesetzt wurde.

JET_cbtypBeforeInsert

Die Rückruffunktion wird vor dem Einfügen des Datensatzes aufgerufen.

JET_cbtypAfterInsert

Die Rückruffunktion wird aufgerufen, sobald die Datenbank-Engine das Einfügen eines Datensatzes abgeschlossen hat.

JET_cbtypBeforeReplace

Die Rückruffunktion wird vor der Änderung eines Datensatzes aufgerufen.

JET_cbtypAfterReplace

Die Rückruffunktion wird aufgerufen, nachdem die Änderung eines Datensatzes beendet wurde.

JET_cbtypBeforeDelete

Die Rückruffunktion wird vor dem Löschen eines Datensatzes aufgerufen.

JET_cbtypAfterDelete

Die Rückruffunktion wird aufgerufen, nachdem ein Datensatz gelöscht wurde.

JET_cbtypUserDefinedDefaultValue

Die Rückruffunktion wird aufgerufen, um einen benutzerdefinierten Standardwert zu berechnen.

JET_cbtypOnlineDefragCompleted

Die Rückruffunktion wird aufgerufen, nachdem ein Aufruf von JetDefragment2 abgeschlossen wurde.

JET_cbtypFreeCursorLS

Die Rückruffunktion wird aufgerufen, wenn der lokale Speicher, der einem Cursor zugeordnet ist, frei werden muss.

JET_cbtypFreeTableLS

Die Rückruffunktion wird aufgerufen, wenn der lokale Speicher, der einer Tabelle zugeordnet ist, frei werden muss.

grbit

Eine Gruppe von Bits, die die Optionen für diesen Aufruf enthalten, die null oder mehr der folgenden Werte enthalten.

Wert

Bedeutung

JET_bitTableCreateFixedDDL

Das JET_bitTableCreateFixedDDL verhindert DDL-Vorgänge für die Tabelle (z. B. das Hinzufügen oder Entfernen von Spalten).

JET_bitTableCreateTemplateTable

Das JET_bitTableCreateTemplateTable bewirkt, dass die Tabelle eine Vorlagentabelle ist. Neue Tabellen können dann den Namen dieser Tabelle als Vorlagentabelle angeben. Das JET_bitTableCreateTemplateTable impliziert JET_bitTableCreateFixedDDL.

JET_bitTableCreateNoFixedVarColumnsInDerivedTables

Muss in Verbindung mit der -JET_bitTableCreateTemplateTable. Veraltet. Nicht verwenden.

tableid

Ein Ausgabefeld, das die JET_TABLEID der neuen Tabelle enthält, wenn der API-Aufruf erfolgreich ist. Wenn der API-Aufruf fehlschlägt, ist der Wert nicht definiert.

cCreated

Ein Ausgabefeld, das die Anzahl der Objekte enthält, die erstellt werden, wenn der API-Aufruf erfolgreich ist. Wenn der API-Aufruf fehlschlägt, ist der Wert nicht definiert.

Die Anzahl der erstellten Objekte entspricht der Summe der Erfolgreich erstellten Spalten, Tabellen und Indizes.

Anforderungen

Anforderung Wert

Client

Erfordert Windows Vista oder Windows XP.

Server

Erfordert Windows Server 2008 oder Windows Server 2003.

Header

Wird in Esent.h deklariert.

Unicode

Wird als JET_TABLECREATE2_W (Unicode) und JET_TABLECREATE2_A (ANSI) implementiert.

Weitere Informationen

JET_CALLBACK
JET_CBTYP
JET_CONDITIONALCOLUMN
JET_ERR
JET_GRBIT
JET_INDEXCREATE
JET_TABLEID
JetCreateTable
JetCreateTableColumnIndex
JetCreateTableColumnIndex2
JetDefragment2