CDaoQueryDefInfo, structure
La CDaoQueryDefInfo
structure contient des informations sur un objet querydef défini pour les objets d’accès aux données (DAO).
Remarque
L’objet d’accès aux données (DAO) est pris en charge via Office 2013. DAO 3.6 est la version finale et est obsolète.
Syntaxe
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
};
Paramètres
m_strName
Nomme de manière unique l’objet querydef. Pour plus d’informations, consultez la rubrique « Name Property » dans l’aide de DAO. Appelez CDaoQueryDef ::GetName pour récupérer cette propriété directement.
m_nType
Valeur qui indique le type opérationnel d’un objet querydef. La valeur peut être l’une des suivantes :
dbQSelect
Sélectionnez : la requête sélectionne les enregistrements.dbQAction
Action : la requête déplace ou modifie les données, mais ne retourne pas d’enregistrements.dbQCrosstab
Analyse croisée : la requête retourne des données dans un format de feuille de calcul.dbQDelete
Supprimer : la requête supprime un ensemble de lignes spécifiées.dbQUpdate
Mise à jour : la requête modifie un ensemble d’enregistrements.dbQAppend
Ajout : la requête ajoute de nouveaux enregistrements à la fin d’une table ou d’une requête.dbQMakeTable
Make-table : la requête crée une table à partir d’un jeu d’enregistrements.dbQDDL
Définition des données : la requête affecte la structure des tables ou leurs parties.dbQSQLPassThrough
Pass-through : l’instruction SQL est transmise directement au back-end de base de données, sans traitement intermédiaire.dbQSetOperation
Union : la requête crée un objet recordset de type instantané contenant des données de tous les enregistrements spécifiés dans deux tables ou plus avec tous les enregistrements dupliqués supprimés. Pour inclure les doublons, ajoutez le mot clé ALL dans l’instruction SQL de querydef.dbQSPTBulk
Utilisé avecdbQSQLPassThrough
pour spécifier une requête qui ne retourne pas d’enregistrements.
Remarque
Pour créer une requête directe SQL, vous ne définissez pas la dbQSQLPassThrough
constante. Cela est défini automatiquement par le moteur de base de données Microsoft Jet lorsque vous créez un objet querydef et définissez la Connect
propriété.
Pour plus d’informations, consultez la rubrique « Type Property » dans l’aide de DAO.
m_dateCreated
Date et heure de création de querydef. Pour récupérer directement la date de création de querydef, appelez la fonction membre GetDateCreated de l’objet CDaoTableDef
associé à la table. Pour plus d’informations, consultez Notes. Consultez également la rubrique « DateCreated, LastUpdated Properties » dans L’aide de DAO.
m_dateLastUpdated
Date et heure de la modification la plus récente apportée au querydef. Pour récupérer directement la date de la dernière mise à jour de la table, appelez la fonction membre GetDateLastUpdated du querydef. Pour plus d’informations, consultez Notes. Consultez également la rubrique « DateCreated, LastUpdated Properties » dans L’aide de DAO.
m_bUpdatable
Indique si des modifications peuvent être apportées à un objet querydef. Si cette propriété a la valeur TRUE, le querydef est pouvant être mis à jour ; sinon, ce n’est pas le cas. Mise à jour signifie que la définition de requête de l’objet querydef peut être modifiée. La propriété Updatable d’un objet querydef a la valeur TRUE si la définition de requête peut être mise à jour, même si le jeu d’enregistrements résultant n’est pas pouvant être mis à jour. Pour récupérer cette propriété directement, appelez la fonction membre CanUpdate de querydef. Pour plus d’informations, consultez la rubrique « Updatable Property » dans L’aide de DAO.
m_bReturnsRecords
Indique si une requête directe SQL vers une base de données externe retourne des enregistrements. Si cette propriété a la valeur TRUE, la requête retourne des enregistrements. Pour récupérer directement cette propriété, appelez CDaoQueryDef ::GetReturnsRecords. Toutes les requêtes directes SQL vers des bases de données externes ne retournent pas tous les enregistrements. Par exemple, une instruction SQL UPDATE met à jour les enregistrements sans retourner d’enregistrements, tandis qu’une instruction SQL SELECT retourne des enregistrements. Pour plus d’informations, consultez la rubrique « ReturnsRecords Property » dans L’aide de DAO.
m_strSQL
Instruction SQL qui définit la requête exécutée par un objet querydef. La propriété SQL contient l’instruction SQL qui détermine la façon dont les enregistrements sont sélectionnés, regroupés et ordonnés lorsque vous exécutez la requête. Vous pouvez utiliser la requête pour sélectionner des enregistrements à inclure dans un objet recordset de type feuille de réponse dynamique ou d’instantané. Vous pouvez également définir des requêtes en bloc pour modifier des données sans retourner d’enregistrements. Vous pouvez récupérer la valeur de cette propriété directement en appelant la fonction membre GetSQL de querydef.
m_strConnect
Fournit des informations sur la source d’une base de données utilisée dans une requête directe. Ces informations prennent la forme d’une chaîne de connexion. Pour plus d’informations sur les chaînes de connexion et pour plus d’informations sur la récupération directe de la valeur de cette propriété, consultez la fonction membre CDaoDatabase ::GetConnect .
m_nODBCTimeout
Nombre de secondes pendant lesquelles le moteur de base de données Microsoft Jet attend avant qu’une erreur de délai d’expiration se produise lorsqu’une requête est exécutée sur une base de données ODBC (Open Database Connectivity). Lorsque vous utilisez une base de données ODBC, telle que Microsoft SQL Server, il peut y avoir des retards en raison du trafic réseau ou de l’utilisation intensive du serveur ODBC. Au lieu d’attendre indéfiniment, vous pouvez spécifier la durée pendant laquelle le moteur Microsoft Jet attend avant qu’il génère une erreur. La valeur de délai d’expiration par défaut est de 60 secondes. Vous pouvez récupérer la valeur de cette propriété directement en appelant la fonction membre GetODBCTimeout de querydef. Pour plus d’informations, consultez la rubrique « ODBCTimeout Property » dans l’aide de DAO.
Notes
Querydef est un objet de la classe CDaoQueryDef. Les références à Primary, Secondary et All indiquent comment les informations sont retournées par la fonction membre GetQueryDefInfo dans la classe CDaoDatabase
.
Les informations récupérées par la fonction membre CDaoDatabase ::GetQueryDefInfo sont stockées dans une CDaoQueryDefInfo
structure. Appel de GetQueryDefInfo
l’objet de base de données dans lequel la collection QueryDefs est stockée. CDaoQueryDefInfo
définit également une Dump
fonction membre dans les builds de débogage. Vous pouvez utiliser Dump
pour vider le contenu d’un CDaoQueryDefInfo
objet. La classe CDaoDatabase
fournit également des fonctions membres pour accéder directement à toutes les propriétés retournées dans un CDaoQueryDefInfo
objet, de sorte que vous appelez GetQueryDefInfo
rarement .
Lorsque vous ajoutez un nouveau champ ou un objet de paramètre à la collection Fields ou Parameters d’un objet querydef, une exception est levée si la base de données sous-jacente ne prend pas en charge le type de données spécifié pour le nouvel objet.
Les paramètres de date et d’heure sont dérivés de l’ordinateur sur lequel le querydef a été créé ou mis à jour pour la dernière fois. Dans un environnement multiutilisateur, les utilisateurs doivent obtenir ces paramètres directement à partir du serveur de fichiers à l’aide de la commande de temps net pour éviter les incohérences dans les paramètres de propriété DateCreated et LastUpdated.
Spécifications
En-tête : afxdao.h
Voir aussi
Structures, styles, rappels et tables de messages
CDaoQueryDef, classe
CDaoDatabase, classe