Partager via


CDaoWorkspace, classe

Gère nommé, session de base de données protégé par un mot de passe de la connexion à fermer une session, par un mono-utilisateur.

class CDaoWorkspace : public CObject

Membres

Constructeurs publics

Nom

Description

CDaoWorkspace::CDaoWorkspace

Crée un objet workspace. Une fois, appelez Créer ou Ouvrir.

Méthodes publiques

Nom

Description

CDaoWorkspace::Append

Ajoute un espace de travail récemment créé à la collection des espaces de travail du moteur de base de données.

CDaoWorkspace::BeginTrans

Commence une nouvelle transaction, qui s'applique à toutes les bases de données ouverts dans l'espace de travail.

CDaoWorkspace::Close

Ferme l'espace de travail et tous les objets qu'elle contient. En attente des transactions sont le restaurée.

CDaoWorkspace::CommitTrans

Termine la transaction en cours et enregistre les modifications.

CDaoWorkspace::CompactDatabase

Compacte (ou doubles) une base de données.

CDaoWorkspace::Create

Crée un objet workspace DAO.

CDaoWorkspace::GetDatabaseCount

Retourne le nombre d'objets de base de données DAO dans la collection des bases de données de l'espace de travail.

CDaoWorkspace::GetDatabaseInfo

Retourne des informations sur les bases de données DAO spécifiées définies dans la collection des bases de données de l'espace de travail.

CDaoWorkspace::GetIniPath

Retourne l'emplacement des paramètres de l'initialisation du moteur de base de données Microsoft Jet dans le Registre Windows.

CDaoWorkspace::GetIsolateODBCTrans

Retourne une valeur qui indique si plusieurs transactions qui impliquent la même source de données ODBC sont isolés via plusieurs connexions liaison à la source de données.

CDaoWorkspace::GetLoginTimeout

Retourne le nombre de secondes avant qu'une erreur se produit lorsque l'utilisateur essaie d'ouvrir une session dans une base de données ODBC.

CDaoWorkspace::GetName

Retourne le nom défini par l'utilisateur pour l'objet workspace.

CDaoWorkspace::GetUserName

Retourne le nom d'utilisateur spécifié lorsque l'espace de travail a été créé. Il s'agit du nom du propriétaire de l'espace de travail.

CDaoWorkspace::GetVersion

Retourne une chaîne qui contient la version du moteur de base de données associé à l'espace de travail.

CDaoWorkspace::GetWorkspaceCount

Retourne le nombre d'objets workspaces DAO dans la collection des espaces de travail du moteur de base de données.

CDaoWorkspace::GetWorkspaceInfo

Retourne des informations sur un espace de travail spécifié DAO défini dans la collection des espaces de travail du moteur de base de données.

CDaoWorkspace::Idle

Permet au moteur de base de données pour effectuer des tâches d'arrière-plan.

CDaoWorkspace::IsOpen

Retourne une valeur différente de zéro si l'espace de travail est ouvert.

CDaoWorkspace::Open

Ouvre explicitement un objet workspace associé à l'espace de travail par défaut DAO.

CDaoWorkspace::RepairDatabase

Essaie de réparer une base de données endommagée.

CDaoWorkspace::Rollback

Termine la transaction en cours et ne parvenez pas à enregistrer les modifications.

CDaoWorkspace::SetDefaultPassword

Définit le mot de passe que le moteur de base de données utilise lorsqu'un objet workspace est créé sans mot de passe spécifique.

CDaoWorkspace::SetDefaultUser

Définit le nom d'utilisateur que le moteur de base de données utilise lorsqu'un objet workspace est créé sans nom d'utilisateur spécifique.

CDaoWorkspace::SetIniPath

Définit l'emplacement des paramètres de l'initialisation du moteur de base de données Microsoft Jet dans le Registre Windows.

CDaoWorkspace::SetIsolateODBCTrans

Spécifie si plusieurs transactions qui impliquent la même source de données ODBC sont isolées en forçant plusieurs connexions à la source de données.

CDaoWorkspace::SetLoginTimeout

Définit le nombre de secondes avant qu'une erreur se produit lorsque l'utilisateur essaie d'ouvrir une connexion à une source de données ODBC.

Données membres publiques

Nom

Description

CDaoWorkspace::m_pDAOWorkspace

Pointe vers l'objet sous-jacent workspace DAO.

Notes

Dans la plupart des cas, vous n'avez pas besoin de plusieurs espaces de travail, et vous n'avez pas besoin de créer des objets workspaces explicites ; lorsque vous ouvrez la base de données et les objets recordset, ils utilisent l'espace de travail par défaut DAO. Toutefois, si nécessaire, vous pouvez exécuter plusieurs sessions à la fois en créant des objets workspaces supplémentaires. Chaque objet workspace peut contenir des objets de base de données ouverts multiples dans sa propre collection de base de données. Dans MFC, un espace de travail est principalement un gestionnaire de transactions, en spécifiant un ensemble de bases de données ouvertes tout dans le même « espace de transaction. »

Notes

Les classes de bases de données DAO sont séparées des classes de base de données MFC basée sur (Open Database Connectivity).Tous les noms de classes de bases de données DAO ont un préfixe « CDao ».En général les classes DAO MFC basée sur sont plus qui gèrent les classes ODBC MFC basée sur.Les classes DAO accèdent aux données via le moteur de base de données Microsoft Jet, y compris les pilotes ODBC.Ils prennent également en charge des opérations de langage de définition de données (DDL), telles que la création de bases de données et ajouter des tables et des champs via des classes, sans devoir appeler DAO directement.

Fonctions

La classe fournit CDaoWorkspace ce qui suit :

  • Accès explicite, si nécessaire, un espace de travail par défaut, créé lors de l'initialisation du moteur de base de données. Habituellement vous l'espace de travail par défaut DAO d'utilisation implicitement en créant la base de données et les objets recordset.

  • Un espace de transaction dans lequel les transactions s'appliquent à toutes les bases de données ouverts dans l'espace de travail. Vous pouvez créer des espaces de travail supplémentaires pour gérer les espaces de transaction séparés.

  • Une interface à de nombreuses propriétés du moteur de base de données Microsoft Jet sous-jacent (consultez les fonctions membres static). En ouvrant ou en créant un espace de travail, ou appeler une fonction membre statique avant d'ouvrir ou créer, initialisez le moteur de base de données.

  • Accès à la collection des espaces de travail du moteur de base de données, qui stocke tous les espaces de travail actifs qui ont été ajoutés à celui-ci. Vous pouvez également créer et utiliser des espaces de travail sans les ajouter à la collection.

Sécurité

MFC n'implémente pas les utilisateurs et groupes ne pas les collections de DAO, qui sont utilisées pour la vérification de sécurité. Si vous avez besoin de ces aspects de DAO, vous devez les programmer vous-même via des appels directs aux interfaces DAO. Pour plus d'informations, consultez note technique 54.

Utilisation

Vous pouvez utiliser la classe CDaoWorkspace :

  • Ouvrez explicitement l'espace de travail par défaut.

    Habituellement votre utilisation de l'espace de travail par défaut est implicite — lorsque vous ouvrez des nouveaux objets de CDaoDatabase ou de CDaoRecordset . Mais vous devrez peut-être y accéder de manière explicite (par exemple, aux propriétés du moteur de base de données d'accès ou à la collection des espaces de travail. Consultez « l'utilisation implicite de l'espace de travail par défaut » ci-dessous.

  • Créez les nouveaux espaces de travail. Appelez ajoutez si vous souhaitez les ajouter à la collection des espaces de travail.

  • Ouvrez un espace de travail existant dans la collection des espaces de travail.

Créer un espace de travail qui n'existe pas déjà dans la collection des espaces de travail est décrit dans la fonction membre de Create . Les objets workspaces ne persistent pas de quelque manière entre les sessions du moteur de datababase. Si les liens d'application MFC de manière statique, en terminant l'application uninitializes le moteur de base de données. Si les liens d'application avec MFC dynamiquement, le moteur de base de données n'est pas initialisé lorsque la DLL MFC est déchargé.

Ouvrir explicitement l'espace de travail par défaut, ou ouvrir un espace de travail existant dans les espaces de travail collection, est décrit dans la fonction membre d' Ouvrez .

Terminer une session de l'espace de travail en fermant l'espace de travail avec la fonction membre de Fermez . Fermer ferme toutes les bases de données que vous ne vous êtes pas fermées précédemment, roulant en arrière toutes les transactions non enregistrées.

Transactions

DAO gère les transactions au niveau de l'espace de travail ; par conséquent, les transactions dans un espace de travail avec les bases de données ouvertes multiples s'appliquent à toutes les bases de données. Par exemple, si deux bases de données ont les mises à jour non enregistrées et vous appelez CommitTrans, toutes les mises à jour sont validées. Si vous souhaitez limiter les transactions à une base de données, il vous faut un objet workspace séparé pour lui.

Utilisation implicite de l'espace de travail par défaut

L'espace de travail par défaut DAO runtime utilise MFC implicitement dans les circonstances suivantes :

  • Si vous créez un objet d' CDaoDatabase mais ne le faites pas faire via un objet existant d' CDaoWorkspace , MFC crée un objet workspace temporaire pour vous, qui correspond à l'espace de travail par défaut DAO. Si vous procédez ainsi pour plusieurs bases de données, tous les objets de base de données sont associés à l'espace de travail par défaut. Vous pouvez accéder à l'espace de travail d'une base de données via une donnée membre d' CDaoDatabase .

  • De même, si vous créez un objet d' CDaoRecordset sans fournir un pointeur vers un objet d' CDaoDatabase , MFC crée un objet de base de données temporaire et, par extension, un objet workspace temporaire. Vous pouvez accéder à la base de données du recordset, et indirectement à son espace de travail, via une donnée membre d' CDaoRecordset .

D'autres opérations

D'autres opérations de base de données sont également fournies, tel que réparer une base de données est endommagé ou compacter une base de données.

Pour plus d'informations sur l'appel DAO directement et sur la sécurité DAO, consultez note technique 54.

Hiérarchie d'héritage

CObject

CDaoWorkspace

Configuration requise

Header: afxdao.h

Voir aussi

Référence

CObject, classe

Graphique de la hiérarchie

CDaoDatabase, classe

CDaoRecordset, classe

CDaoTableDef, classe

CDaoQueryDef, classe

CDaoException, classe