Freigeben über


CDaoFieldInfo-Struktur

Die CDaoFieldInfo-Struktur enthält Informationen über ein Feld, das für Datenzugriffsobjekte (DAO) definiert ist.

struct CDaoFieldInfo
{
   CString m_strName;           // Primary
   short m_nType;               // Primary
   long m_lSize;                // Primary
   long m_lAttributes;          // Primary
   short m_nOrdinalPosition;    // Secondary
   BOOL m_bRequired;            // Secondary
   BOOL m_bAllowZeroLength;     // Secondary
   long m_lCollatingOrder;      // Secondary
   CString m_strForeignName;    // Secondary
   CString m_strSourceField;    // Secondary
   CString m_strSourceTable;    // Secondary
   CString m_strValidationRule; // All
   CString m_strValidationText; // All
   CString m_strDefaultValue;   // All
};

Parameter

  • m_strName
    Eindeutig Namen der Feldobjekt.Ausführliche Informationen finden Sie im Thema "Name-Eigenschaft" in der DAO-Hilfe.

  • m_nType
    Ein Wert, der den Datentyp des Felds angibt.Ausführliche Informationen finden Sie im Thema "Typeigenschaft" in der DAO-Hilfe.Der Wert dieser Eigenschaft kann einen der folgenden Werte sein:

    • dbBoolean identisch, ja/nein TRUE/FALSE

    • dbByte Byte

    • dbInteger kurz

    • dbLong lang

    • dbCurrency Währung. Weitere Informationen finden Sie unter COleCurrency MFC-Klasse

    • dbSingle einzeln

    • dbDouble Double

    • dbDate Datum/Uhrzeit. Weitere Informationen finden Sie unter COleDateTime MFC-Klasse

    • dbText Text. Weitere Informationen finden Sie unter CString MFC-Klasse

    • lange Binärdatei OLE-Objekt (dbLongBinary); CByteArray MFC-Klasse sollten Sie anstelle der Klasse CLongBinary verwenden, da CByteArray umfangreicher und einfacher zu verwenden ist.

    • Memo dbMemo. Weitere Informationen finden Sie unter CString MFC-Klasse

    • Ein GUID (Globally Unique Identifier dbGUID Universally Unique Identifier) eines/mit Remoteprozeduraufrufen.Weitere Informationen finden Sie im Thema "Typeigenschaft" in der DAO-Hilfe.

    HinweisHinweis

    Verwenden Sie keine String-Datentypen für Binärdaten.Dadurch werden Ihre Daten, durch die Unicode-/ANSI Ebene übersetzungs Das Ergebnis des erweiterten Mehraufwand und ggf. der unerwarteten Übersetzung zu übergeben.

  • m_lSize
    Ein Wert, der die maximale Größe (in Byte) eines DAO-Feld Objekts angibt, das Text oder die feste Größe eines Feldobjekts enthält, das Text oder numerische Werte enthält.Ausführliche Informationen finden Sie im Thema "Größen-Eigenschaft" in der DAO-Hilfe.Größen können einen der folgenden Werte annehmen:

    type

    Größe (Bytes)

    Beschreibung

    dbBoolean

    1 Byte

    (Ja/nein derjenigen True bzw. False)

    dbByte

    1

    Byte

    dbInteger

    2

    Ganze Zahl

    dbLong

    4

    Long

    dbCurrency

    8

    COleCurrency(Währung)

    dbSingle

    4

    Single

    dbDouble

    8

    Double

    dbDate

    8

    Datum/Uhrzeit (COleDateTime)

    dbText

    1 - 255

    Text (CString)

    dbLongBinary

    0

    Lange Binärdatei (OLE-Objekt. CByteArray. Verwenden Sie anstelle CLongBinary)

    dbMemo

    0

    Memo (CString)

    dbGUID

    16

    Ein GUID (Globally Unique Identifier, global eindeutiger/Universally Unique Identifier, die mit Remoteprozeduraufrufen.

  • m_lAttributes
    Gibt die Eigenschaften eines Feldobjekts an, das von Tabledef, ein Recordset eine Querydef oder ein Indexobjekt enthalten ist.Der Wert, der zurückgegeben wird, kann eine Summe dieser Konstanten handeln, erstellt mit dem C++-bitweisen (OR**|**Operator):

    • dbFixedField die Feldgröße korrigiert wird (Standardeinstellung für numerische Felder).

    • dbVariableField die Feldgröße ist variabel (nur Textfelder).

    • dbAutoIncrField der Feldwert für neue Datensätze wird automatisch einer eindeutigen langen ganzen Zahl inkrementiert, die nicht geändert werden kann.Nur unterstützt für Microsoft Jet-Datenbank-Tabellen.

    • dbUpdatableField der Feldwert kann geändert werden.

    • dbDescending das Feld wird in Reihenfolge (100:0) oder Z-A Reihenfolge sortiert (gilt nur für ein Feld in einer Feldobjekt Auflistung des Indexobjekts. Indexobjekte werden in MFC selbst in Tabledef-Objekten) enthalten.Wenn Sie diese Konstante weglassen, wird das Feld in aufsteigender oder A-Z (0 bis 100) Reihenfolge (Standard) sortiert.

    Wenn Sie die Einstellung dieser Eigenschaft überprüfen, können Sie den C++-bitweisen Operator AND (&), die für ein bestimmtes Attribut zu testen.Wenn Sie mehrere Attribute festlegen, können Sie diese verbinden, indem Sie die entsprechenden Konstanten mit dem bitweisen OR kombinieren (**|**Operator.)Ausführliche Informationen finden Sie im Thema "Attribut-Eigenschaft" in der DAO-Hilfe.

  • m_nOrdinalPosition
    Ein Wert, der die numerische Reihenfolge angibt, in der Sie ein Feld soll, der durch ein relativ zu anderen Feldern dar DAO-Feld Objekt angezeigt werden soll.Sie können diese Eigenschaft mit CDaoTableDef::CreateField festlegen.Ausführliche Informationen finden Sie im Thema "OrdinalPositions-Eigenschaft" in der DAO-Hilfe.

  • m_bRequired
    Gibt an, ob ein DAO-Feld - Objekt erfordert einen Wert ungleich null.Wenn diese Eigenschaft TRUE ist, ermöglicht das Feld keinen NULL-Wert.Bei Bedarf ist auf FALSE festgelegt, kann das Feld NULL-Werte als auch Werte enthalten, die die Bedingungen erfüllen, die durch die Eigenschafteneinstellungen AllowZeroLength und ValidationRule angegeben werden.Ausführliche Informationen finden Sie im Thema "erforderliche Eigenschaft" in der DAO-Hilfe.Sie können diese Eigenschaft für Tabledef mit CDaoTableDef::CreateField festlegen.

  • m_bAllowZeroLength
    Gibt an, ob eine leere Zeichenfolge ("") ein gültiger Wert eines DAO-Feld Objekts mit einem Text- oder Memo des Datentyps ist.Wenn diese Eigenschaft TRUE ist, wird eine leere Zeichenfolge ein gültiger Wert.Sie können diese Eigenschaft auf FALSE festlegen, um sicherzustellen, dass Sie eine leere Zeichenfolge nicht verwenden können, um den Wert eines Felds fest.Ausführliche Informationen finden Sie im Thema "AllowZeroLength-Eigenschaft" in der DAO-Hilfe.Sie können diese Eigenschaft für Tabledef mit CDaoTableDef::CreateField festlegen.

  • m_lCollatingOrder
    Gibt die Sequenz der Sortierreihenfolge im Text für Zeichenfolgenvergleiche oder Sortierung an.Ausführliche Informationen finden Sie im Thema "Windows-Registrierungs-Einstellungen für den Datenzugriff" in der DAO-Hilfe anzupassen.Eine Liste der möglichen zurückgegebenen Werte finden Sie unter m_lCollatingOrder-Member der CDaoDatabaseInfo-Struktur.Sie können diese Eigenschaft für Tabledef mit CDaoTableDef::CreateField festlegen.

  • m_strForeignName
    Ein Wert, der eine Beziehung, den Namen des DAO-Feld Objekts in einer fremden Tabelle angibt, die an ein Feld in einer primären Tabelle entspricht.Ausführliche Informationen finden Sie im Thema "ForeignName-Eigenschaft" in der DAO-Hilfe.

  • m_strSourceField
    Gibt den Namen des Felds an, das die ursprüngliche Quelle der Daten für ein DAO-Feld Objekt handelt, das von Tabledef, ein Recordset oder ein Querydef-Objekt enthalten ist.Diese Eigenschaft gibt den ursprünglichen Feldnamen an, der einem Feldobjekt zugeordnet ist.Beispielsweise können Sie diese Eigenschaft verwenden, um die ursprüngliche Quelle der Daten in einem Feld Abfragen zu bestimmen, dessen Name dem Namen des Felds in der zugrunde liegenden Tabelle nicht verknüpft ist.Ausführliche Informationen finden Sie im Thema "SourceField, SourceTable-Eigenschaften" in der DAO-Hilfe.Sie können diese Eigenschaft für Tabledef mit CDaoTableDef::CreateField festlegen.

  • m_strSourceTable
    Gibt den Namen der Tabelle an, die die ursprüngliche Quelle der Daten für ein DAO-Feld Objekt handelt, das von Tabledef, ein Recordset oder ein Querydef-Objekt enthalten ist.Diese Eigenschaft gibt den Namen der Quelltabelle an, der mit einem Feldobjekt zugeordnet ist.Beispielsweise können Sie diese Eigenschaft verwenden, um die ursprüngliche Quelle der Daten in einem Feld Abfragen zu bestimmen, dessen Name dem Namen des Felds in der zugrunde liegenden Tabelle nicht verknüpft ist.Ausführliche Informationen finden Sie im Thema "SourceField, SourceTable-Eigenschaften" in der DAO-Hilfe.Sie können diese Eigenschaft für Tabledef mit CDaoTableDef::CreateField festlegen.

  • m_strValidationRule
    Ein Wert, der die Daten in einem Feld überprüft, wenn es an eine Tabelle geändert oder hinzugefügt wird.Ausführliche Informationen finden Sie im Thema "ValidationRule-Eigenschaft" in der DAO-Hilfe.Sie können diese Eigenschaft für Tabledef mit CDaoTableDef::CreateField festlegen.

    Weitere Informationen zu tabledefs finden Sie im m_strValidationRule-Member der CDaoTableDefInfo-Struktur.

  • m_strValidationText
    Ein Wert, der den Text der Meldung angibt, die für die Anwendung angezeigt wird, wenn der Wert eines Objekts DAO-Feld nicht die Validierungsregel erfüllt, die von der ValidationRule-Eigenschafteneinstellung angegeben wird.Ausführliche Informationen finden Sie im Thema "ValidationText-Eigenschaft" in der DAO-Hilfe.Sie können diese Eigenschaft für Tabledef mit CDaoTableDef::CreateField festlegen.

  • m_strDefaultValue
    Der Standardwert eines DAO-Feld Objekts.Wenn ein neuer Datensatz erstellt wird, wird die DefaultValue-Eigenschafteneinstellung automatisch als Wert für das Feld eingegeben.Ausführliche Informationen finden Sie im Thema "in der DAO-Hilfe" DefaultValue-Eigenschaft.Sie können diese Eigenschaft für Tabledef mit CDaoTableDef::CreateField festlegen.

Hinweise

Die Verweise auf primärem und sekundärem, werden alle oben zeigen an, wie die Informationen über die GetFieldInfo-Memberfunktion in Klassen CDaoTableDef, CDaoQueryDef und CDaoRecordset zurückgegeben werden.

Feld Objekte werden nicht durch eine MFC-Klasse dargestellt.Stattdessen enthalten die zugrunde liegenden Objekte DAO-Objekte der folgenden Klassen von MFC Auflistungen Feld Objekte: CDaoTableDef, CDaoRecordset und CDaoQueryDef.Diese Klasse stellt Memberfunktionen, um mehrerer einzelner Elemente der Feldinformationen zuzugreifen oder Sie können sie mit einem CDaoFieldInfo-Objekt in einem gleichzeitig zugreifen, indem sie die GetFieldInfo-Memberfunktion des Containerobjekts aufrufen.

Neben der Verwendung für die Untersuchung von Objekteigenschaften, können Sie CDaoFieldInfo auch verwenden, um einen Eingabeparameter zum Erstellen neuer Felder in Tabledef zu erstellen.Einfachere Optionen sind für diese Funktion verfügbar, aber wenn Sie genauere Steuerung wünschen, können Sie die Version von CDaoTableDef::CreateField verwenden, die einen CDaoFieldInfo-Parameter akzeptiert.

Die Informationen, die von der GetFieldInfo-Memberfunktion abgerufen werden (der Klasse, die das Feld enthält CDaoFieldInfo ) werden in einer Struktur gespeichert.Rufen Sie die GetFieldInfo-Memberfunktion des Containerobjekts an, in dessen Auflistung der das Feld Feldobjekt gespeichert wird.CDaoFieldInfo definiert auch eine Dump-Memberfunktion in Debugbuilds.Sie können Dump verwenden, um den Inhalt eines CDaoFieldInfo-Objekts zu speichern.

Anforderungen

Header: afxdao.h

Siehe auch

Referenz

CDaoTableDef::GetFieldInfo

CDaoRecordset::GetFieldInfo

CDaoQueryDef::GetFieldInfo

Weitere Ressourcen

Strukturen, Formate, Rückrufe und Meldungszuordnungen