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 CDataConnection
metody 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 Open
metody * .
W programie CDataConnection
wystarczy 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
HRESULT
Standardowy .
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
HRESULT
Standardowy .
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