Udostępnij za pośrednictwem


Klasa CDataConnection

Zarządza połączeniem ze źródłem danych.

Składnia

class CDataConnection

Wymagania

Nagłówek: atldbcli.h

Elementy członkowskie

Metody

Nazwa/nazwisko opis
CDataConnection::CDataConnection Konstruktor. Tworzy wystąpienie i inicjuje CDataConnection obiekt.
CDataConnection::Copy Tworzy kopię istniejącego połączenia danych.
CDataConnection::Open Otwiera połączenie ze źródłem danych przy użyciu parametrów inicjowania.
CDataConnection::OpenNewSession Otwiera nową sesję w bieżącym połączeniu.

Operatory

Nazwa/nazwisko opis
CDataConnection::operator BOOL Określa, czy bieżąca sesja jest otwarta, czy nie.
CDataConnection::operator bool Określa, czy bieżąca sesja jest otwarta, czy nie.
CDataConnection::operator CDataSource& Zwraca odwołanie do zawartego CDataSource obiektu.
CDataConnection::operator CDataSource* Zwraca wskaźnik do zawartego CDataSource obiektu.
CDataConnection::operator CSession& Zwraca odwołanie do zawartego CSession obiektu.
CDataConnection::operator CSession* Zwraca wskaźnik do zawartego CSession obiektu.

Uwagi

CDataConnection jest przydatną klasą do tworzenia klientów, ponieważ hermetyzuje niezbędne obiekty (źródło danych i sesja) oraz niektóre zadania, które należy wykonać podczas nawiązywania połączenia ze źródłem danych

Bez CDataConnectionmetody należy utworzyć CDataSource obiekt, wywołać jego OpenFromInitializationString metodę, a następnie utworzyć wystąpienie CSession obiektu, wywołać jego Open metodę, a następnie utworzyć obiekt i wywołać CCommand jego Openmetody * .

W programie CDataConnectionwystarczy utworzyć obiekt połączenia, przekazać mu parametry inicjowania, a następnie użyć tego połączenia, aby otworzyć polecenia. Jeśli planujesz wielokrotnie używać połączenia z bazą danych, dobrym pomysłem jest pozostawienie otwartego połączenia i CDataConnection zapewnienie wygodnego sposobu, aby to zrobić.

Uwaga

Jeśli tworzysz aplikację bazy danych, która musi obsługiwać wiele sesji, musisz użyć polecenia OpenNewSession.

CDataConnection::CDataConnection

Tworzy wystąpienie i inicjuje CDataConnection obiekt.

Składnia

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

Parametry

ds
[in] Odwołanie do istniejącego połączenia danych.

Uwagi

Pierwsze zastąpienie tworzy nowy CDataConnection obiekt z ustawieniami domyślnymi.

Drugie zastąpienie tworzy nowy CDataConnection obiekt z ustawieniami równoważnymi z określonym obiektem połączenia danych.

CDataConnection::Copy

Tworzy kopię istniejącego połączenia danych.

Składnia

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

Parametry

ds
[in] Odwołanie do istniejącego połączenia danych do skopiowania.

CDataConnection::Open

Otwiera połączenie ze źródłem danych przy użyciu parametrów inicjowania.

Składnia

HRESULT Open(LPCOLESTR szInitString) throw();

Parametry

szInitString
[in] Ciąg inicjowania źródła danych.

Wartość zwracana

HRESULTStandardowy .

CDataConnection::OpenNewSession

Otwiera nową sesję przy użyciu źródła danych obiektu bieżącego połączenia.

Składnia

HRESULT OpenNewSession(CSession & session) throw();

Parametry

session
[in/out] Odwołanie do nowego obiektu sesji.

Uwagi

Nowa sesja używa zawartego obiektu danych bieżącego obiektu połączenia jako obiektu nadrzędnego i może uzyskać dostęp do wszystkich tych samych informacji co źródło danych.

Wartość zwracana

HRESULTStandardowy .

CDataConnection::operator BOOL

Określa, czy bieżąca sesja jest otwarta, czy nie.

Składnia

operator BOOL() throw();

Uwagi

Zwraca BOOL wartość (MFC typedef). TRUE oznacza, że bieżąca sesja jest otwarta; FALSE oznacza, że bieżąca sesja jest zamknięta.

CDataConnection::operator bool (OLE DB)

Określa, czy bieżąca sesja jest otwarta, czy nie.

Składnia

operator bool() throw();

Uwagi

bool Zwraca wartość (typ danych C++). true oznacza, że bieżąca sesja jest otwarta; false oznacza, że bieżąca sesja jest zamknięta.

CDataConnection::operator CDataSource&

Zwraca odwołanie do zawartego CDataSource obiektu.

Składnia

operator const CDataSource&() throw();

Uwagi

Ten operator zwraca odwołanie do zawartego CDataSource obiektu, co pozwala przekazać CDataConnection obiekt, w którym CDataSource jest oczekiwane odwołanie.

Przykład

Jeśli masz funkcję (na przykład func poniżej), która przyjmuje CDataSource odwołanie, możesz zamiast CDataSource& tego przekazać CDataConnection obiekt.

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

 

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

CDataConnection::operator CDataSource*

Zwraca wskaźnik do zawartego CDataSource obiektu.

Składnia

operator const CDataSource*() throw();

Uwagi

Ten operator zwraca wskaźnik do zawartego CDataSource obiektu, co pozwala przekazać CDataConnection obiekt, w którym wskaźnik jest oczekiwany CDataSource .

Zobacz operator CDataSource& przykład użycia.

CDataConnection::operator CSession&

Zwraca odwołanie do zawartego CSession obiektu.

Składnia

operator const CSession&();

Uwagi

Ten operator zwraca odwołanie do zawartego CSession obiektu, co pozwala przekazać CDataConnection obiekt, w którym CSession jest oczekiwane odwołanie.

Przykład

Jeśli masz funkcję (na przykład func poniżej), która przyjmuje CSession odwołanie, możesz zamiast CSession& tego przekazać CDataConnection obiekt.

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*

Zwraca wskaźnik do zawartego CSession obiektu.

Składnia

operator const CSession*() throw();

Uwagi

Ten operator zwraca wskaźnik do zawartego CSession obiektu, co pozwala przekazać CDataConnection obiekt, w którym wskaźnik jest oczekiwany CSession .

Przykład

Zobacz operator CSession& przykład użycia.

Zobacz też

Szablony konsumentów OLE DB
Dokumentacja szablonów odbiorców OLE DB