Partager via


Classe CDataConnection

Gère la connexion avec la source de données.

Syntaxe

class CDataConnection

Spécifications

En-tête : atldbcli.h

Members (Membres)

Méthodes

Nom Description
CDataConnection::CDataConnection Constructeur. Instancie et initialise un CDataConnection objet.
CDataConnection::Copy Crée une copie d’une connexion de données existante.
CDataConnection::Open Ouvre une connexion à une source de données à l’aide d’une chaîne d’initialisation.
CDataConnection::OpenNewSession Ouvre une nouvelle session sur la connexion actuelle.

Opérateurs

Nom Description
CDataConnection::operator BOOL Détermine si la session active est ouverte ou non.
CDataConnection::operator bool Détermine si la session active est ouverte ou non.
CDataConnection::operator CDataSource& Retourne une référence à l’objet contenu CDataSource .
CDataConnection::operator CDataSource* Retourne un pointeur vers l’objet contenu CDataSource .
CDataConnection::operator CSession& Retourne une référence à l’objet contenu CSession .
CDataConnection::operator CSession* Retourne un pointeur vers l’objet contenu CSession .

Notes

CDataConnection est une classe utile pour créer des clients, car elle encapsule les objets nécessaires (source de données et session) et certaines tâches que vous devez effectuer lors de la connexion à une source de données

Sans CDataConnection, vous devez créer un CDataSource objet, appeler sa OpenFromInitializationString méthode, puis créer une instance d’un CSession objet, appeler sa Open méthode, puis créer un CCommand objet et appeler ses Openméthodes *.

Avec CDataConnection, vous devez uniquement créer un objet de connexion, le transmettre à une chaîne d’initialisation, puis utiliser cette connexion pour ouvrir des commandes. Si vous envisagez d’utiliser votre connexion à la base de données à plusieurs reprises, il est judicieux de garder la connexion ouverte et CDataConnection fournit un moyen pratique de le faire.

Remarque

Si vous créez une application de base de données qui doit gérer plusieurs sessions, vous devez utiliser OpenNewSession.

CDataConnection::CDataConnection

Instancie et initialise un CDataConnection objet.

Syntaxe

CDataConnection();
CDataConnection(const CDataConnection &ds);

Paramètres

ds
[in] Référence à une connexion de données existante.

Notes

Le premier remplacement crée un CDataConnection objet avec les paramètres par défaut.

Le deuxième remplacement crée un CDataConnection objet avec des paramètres équivalents à l’objet de connexion de données que vous spécifiez.

CDataConnection::Copy

Crée une copie d’une connexion de données existante.

Syntaxe

CDataConnection& Copy(const CDataConnection & ds) throw();

Paramètres

ds
[in] Référence à une connexion de données existante à copier.

CDataConnection::Open

Ouvre une connexion à une source de données à l’aide d’une chaîne d’initialisation.

Syntaxe

HRESULT Open(LPCOLESTR szInitString) throw();

Paramètres

szInitString
[in] Chaîne d’initialisation pour la source de données.

Valeur retournée

Une norme HRESULT.

CDataConnection::OpenNewSession

Ouvre une nouvelle session à l’aide de la source de données de l’objet de connexion actuel.

Syntaxe

HRESULT OpenNewSession(CSession & session) throw();

Paramètres

session
[in/out] Référence au nouvel objet de session.

Notes

La nouvelle session utilise l’objet source de données contenu de l’objet de connexion actuel comme parent et peut accéder à toutes les mêmes informations que la source de données.

Valeur retournée

Une norme HRESULT.

CDataConnection::operator BOOL

Détermine si la session active est ouverte ou non.

Syntaxe

operator BOOL() throw();

Notes

Renvoie BOOL la valeur (typedef MFC). TRUE signifie que la session active est ouverte ; FALSE signifie que la session active est fermée.

CDataConnection::operator bool (OLE DB)

Détermine si la session active est ouverte ou non.

Syntaxe

operator bool() throw();

Notes

Retourne une bool valeur (type de données C++). true signifie que la session active est ouverte ; false signifie que la session active est fermée.

CDataConnection::operator CDataSource&

Retourne une référence à l’objet contenu CDataSource .

Syntaxe

operator const CDataSource&() throw();

Notes

Cet opérateur retourne une référence à l’objet contenu CDataSource , ce qui vous permet de passer un CDataConnection objet où une CDataSource référence est attendue.

Exemple

Si vous avez une fonction (par exemple func , ci-dessous) qui prend une CDataSource référence, vous pouvez utiliser CDataSource& pour passer un CDataConnection objet à la place.

void SourceFunc(const CDataSource& theSource)
{
   CComVariant var;
   theSource.GetProperty(DBPROPSET_DATASOURCEINFO, DBPROP_DATASOURCENAME, &var);
}

 

CDataConnection dc;
dc.Open(szInit);
SourceFunc(dc);

CDataConnection::operator CDataSource*

Retourne un pointeur vers l’objet contenu CDataSource .

Syntaxe

operator const CDataSource*() throw();

Notes

Cet opérateur retourne un pointeur vers l’objet contenu CDataSource , ce qui vous permet de passer un CDataConnection objet où un CDataSource pointeur est attendu.

Consultez operator CDataSource& un exemple d’utilisation.

CDataConnection::operator CSession&

Retourne une référence à l’objet contenu CSession .

Syntaxe

operator const CSession&();

Notes

Cet opérateur retourne une référence à l’objet contenu CSession , ce qui vous permet de passer un CDataConnection objet où une CSession référence est attendue.

Exemple

Si vous avez une fonction (par exemple func , ci-dessous) qui prend une CSession référence, vous pouvez utiliser CSession& pour passer un CDataConnection objet à la place.

void SessionFunc(const CSession& theSession)
{
   XACTTRANSINFO info = {0};
   HRESULT hr = theSession.GetTransactionInfo(&info);
   wprintf_s(_T("GetTransactionInfo returned %x\n"), hr);
}

 

CDataConnection dc;
dc.Open(szInit);
SessionFunc(dc);

CDataConnection::operator CSession*

Retourne un pointeur vers l’objet contenu CSession .

Syntaxe

operator const CSession*() throw();

Notes

Cet opérateur retourne un pointeur vers l’objet contenu CSession , ce qui vous permet de passer un CDataConnection objet où un CSession pointeur est attendu.

Exemple

Consultez operator CSession& un exemple d’utilisation.

Voir aussi

Modèles de consommateur OLE DB
Informations de référence sur les modèles de consommateur OLE DB