Freigeben über


CDaoQueryDefInfo-Struktur

Die CDaoQueryDefInfo Struktur enthält Informationen zu einem querydef-Objekt, das für Datenzugriffsobjekte (Data Access Objects, DAO) definiert ist.

Syntax

struct CDaoQueryDefInfo
{
    CString m_strName;               // Primary
    short m_nType;   // Primary
    COleDateTime m_dateCreated;      // Secondary
    COleDateTime m_dateLastUpdated;  // Secondary
    BOOL m_bUpdatable;               // Secondary
    BOOL m_bReturnsRecords;          // Secondary
    CString m_strSQL;                // All
    CString m_strConnect;            // All
    short m_nODBCTimeout;            // All
};

Parameter

m_strName
Benennt das querydef-Objekt eindeutig. Weitere Informationen finden Sie im Thema "Name Property" in der DAO-Hilfe. Rufen Sie CDaoQueryDef::GetName auf, um diese Eigenschaft direkt abzurufen.

m_nType
Ein Wert, der den Betriebstyp eines Querydef-Objekts angibt. Der Wert kann in folgenden Formen vorliegen:

  • dbQSelect Select – the query selects records.

  • dbQAction Aktion – die Abfrage verschiebt oder ändert Daten, gibt jedoch keine Datensätze zurück.

  • dbQCrosstab Kreuztabelle – die Abfrage gibt Daten in einem Kalkulationstabellenformat zurück.

  • dbQDelete Delete – die Abfrage löscht eine Reihe von angegebenen Zeilen.

  • dbQUpdate Aktualisieren – die Abfrage ändert eine Gruppe von Datensätzen.

  • dbQAppend Append – die Abfrage fügt am Ende einer Tabelle oder Abfrage neue Datensätze hinzu.

  • dbQMakeTable Make-table – die Abfrage erstellt eine neue Tabelle aus einem Recordset.

  • dbQDDL Datendefinition – die Abfrage wirkt sich auf die Struktur von Tabellen oder deren Teilen aus.

  • dbQSQLPassThrough Pass-Through – die SQL-Anweisung wird direkt an das Datenbank-Back-End ohne Zwischenverarbeitung übergeben.

  • dbQSetOperationUnion – Die Abfrage erstellt ein Momentaufnahme-Typ-Recordsetobjekt, das Daten aus allen angegebenen Datensätzen in zwei oder mehr Tabellen mit entfernten doppelten Datensätzen enthält. Um die Duplikate einzuschließen, fügen Sie die Schlüsselwort (keyword) ALL in der SQL-Anweisung der Abfragedef hinzu.

  • dbQSPTBulk Wird verwendet dbQSQLPassThrough , um eine Abfrage anzugeben, die keine Datensätze zurückgibt.

Hinweis

Zum Erstellen einer SQL-Pass-Through-Abfrage legen Sie die dbQSQLPassThrough Konstante nicht fest. Dies wird automatisch vom Microsoft Jet-Datenbankmodul festgelegt, wenn Sie ein Querydef-Objekt erstellen und die Verbinden-Eigenschaft festlegen.

Weitere Informationen finden Sie im Thema "Type Property" in der DAO-Hilfe.

m_dateCreated
Das Datum und die Uhrzeit, zu dem die Abfrage erstellt wurde. Rufen Sie zum direkten Abrufen des Erstellungsdatums der Abfragedef die GetDateCreated-Memberfunktion des Objekts auf, das CDaoTableDef der Tabelle zugeordnet ist. Weitere Informationen finden Sie unten in den Kommentaren. Weitere Informationen finden Sie im Thema "DateCreated, LastUpdated Properties" in der DAO-Hilfe.

m_dateLastUpdated
Das Datum und die Uhrzeit der letzten Änderung, die an der Abfragedef vorgenommen wurde. Rufen Sie zum direkten Abrufen des Datums, an dem die Tabelle zuletzt aktualisiert wurde, die GetDateLastUpdated-Memberfunktion der Abfragedef auf. Weitere Informationen finden Sie unten in den Kommentaren. Weitere Informationen finden Sie im Thema "DateCreated, LastUpdated Properties" in der DAO-Hilfe.

m_bUpdatable
Gibt an, ob Änderungen an einem Querydef-Objekt vorgenommen werden können. Wenn diese Eigenschaft WAHR ist, ist die Abfragedef aktualisierbar; andernfalls ist es nicht. Aktualisierbar bedeutet, dass die Abfragedefinition des Querydef-Objekts geändert werden kann. Die aktualisierbare Eigenschaft eines Querydef-Objekts wird auf TRUE festgelegt, wenn die Abfragedefinition aktualisiert werden kann, auch wenn das resultierende Recordset nicht aktualisierbar ist. Rufen Sie zum direkten Abrufen dieser Eigenschaft die CanUpdate-Memberfunktion der Abfragedef auf. Weitere Informationen finden Sie im Thema "Aktualisierbare Eigenschaft" in der DAO-Hilfe.

m_bReturnsRecords
Gibt an, ob eine SQL-Pass-Through-Abfrage an eine externe Datenbank Datensätze zurückgibt. Wenn diese Eigenschaft WAHR ist, gibt die Abfrage Datensätze zurück. Rufen Sie zum direkten Abrufen dieser Eigenschaft CDaoQueryDef::GetReturnsRecords auf. Nicht alle SQL-Pass-Through-Abfragen an externe Datenbanken geben Datensätze zurück. Beispielsweise aktualisiert eine SQL UPDATE-Anweisung Datensätze, ohne Datensätze zurückzugeben, während eine SQL SELECT-Anweisung Datensätze zurückgibt. Weitere Informationen finden Sie im Thema "ReturnsRecords Property" in der DAO-Hilfe.

m_strSQL
Die SQL-Anweisung, die die abfrage definiert, die von einem querydef-Objekt ausgeführt wird. Die SQL-Eigenschaft enthält die SQL-Anweisung, die bestimmt, wie Datensätze ausgewählt, gruppiert und sortiert werden, wenn Sie die Abfrage ausführen. Sie können die Abfrage verwenden, um Datensätze auszuwählen, die in ein Recordsetobjekt vom Typ Dynaset oder Momentaufnahme aufgenommen werden sollen. Sie können auch Massenabfragen definieren, um Daten zu ändern, ohne Datensätze zurückzugeben. Sie können den Wert dieser Eigenschaft direkt abrufen, indem Sie die GetSQL-Memberfunktion der Abfrage aufrufen.

m_strVerbinden
Stellt Informationen zur Quelle einer Datenbank bereit, die in einer Pass-Through-Abfrage verwendet wird. Diese Informationen werden als Verbindungszeichenfolge verwendet. Weitere Informationen zu Verbindungszeichenfolgen und Informationen zum direkten Abrufen des Werts dieser Eigenschaft finden Sie in der Memberfunktion CDaoDatabase::Get Verbinden.

m_nODBCTimeout
Die Anzahl der Sekunden, die das Microsoft Jet-Datenbankmodul wartet, bevor ein Timeoutfehler auftritt, wenn eine Abfrage in einer ODBC-Datenbank ausgeführt wird. Wenn Sie eine ODBC-Datenbank verwenden, z. B. Microsoft SQL Server, kann es zu Verzögerungen aufgrund des Netzwerkdatenverkehrs oder einer starken Verwendung des ODBC-Servers kommen. Anstatt auf unbestimmte Zeit zu warten, können Sie angeben, wie lange das Microsoft Jet-Modul wartet, bevor ein Fehler erzeugt wird. Der Standardtimeoutwert beträgt 60 Sekunden. Sie können den Wert dieser Eigenschaft direkt abrufen, indem Sie die GetODBCTimeout-Memberfunktion der Abfrage aufrufen. Weitere Informationen finden Sie im Thema "ODBCTimeout-Eigenschaft" in der DAO-Hilfe.

Hinweise

Die Querydef ist ein Objekt der Klasse CDaoQueryDef. Die Verweise auf "Primary", "Secondary" und "All above" geben an, wie die Informationen von der GetQueryDefInfo-Memberfunktion in der Klasse CDaoDatabasezurückgegeben werden.

Informationen, die von der CDaoDatabase::GetQueryDefInfo-Memberfunktion abgerufen werden, werden in einer CDaoQueryDefInfo Struktur gespeichert. Aufrufen GetQueryDefInfo des Datenbankobjekts, in dessen QueryDefs-Auflistung das Querydef-Objekt gespeichert ist. CDaoQueryDefInfo definiert zudem eine Memberfunktion Dump in Debugbuilds. Sie können Dump verwenden, um den Inhalt eines CDaoQueryDefInfo-Objekts auszugeben. Die Klasse CDaoDatabase stellt außerdem Memberfunktionen bereit, um direkt auf alle in einem CDaoQueryDefInfo Objekt zurückgegebenen Eigenschaften zuzugreifen, sodass Sie wahrscheinlich selten aufrufen GetQueryDefInfomüssen.

Wenn Sie ein neues Feld- oder Parameterobjekt an die Fields- oder Parameters-Auflistung eines Querydef-Objekts anfügen, wird eine Ausnahme ausgelöst, wenn die zugrunde liegende Datenbank den für das neue Objekt angegebenen Datentyp nicht unterstützt.

Die Datums- und Uhrzeiteinstellungen werden vom Computer abgeleitet, auf dem die Abfragedef erstellt oder zuletzt aktualisiert wurde. In einer Mehrbenutzerumgebung sollten Benutzer diese Einstellungen direkt vom Dateiserver mithilfe des Befehls "Nettozeit " abrufen, um Diskrepanzen in den Eigenschafteneinstellungen "DateCreated" und "LastUpdated" zu vermeiden.

Anforderungen

Header: afxdao.h

Siehe auch

Strukturen, Stile, Rückrufe und Meldungszuordnungen
CDaoQueryDef-Klasse
CDaoDatabase-Klasse