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