Megosztás:


CDataSource-osztály

Egy OLE DB adatforrás-objektumnak felel meg, amely egy szolgáltató és egy adatforrás közötti kapcsolatot jelöli.

Szemantika

class CDataSource

Requirements

Fejléc: atldbcli.h

Members

Methods

Név Description
Bezár Bezárja a kapcsolatot.
GetInitializationString Lekéri a jelenleg megnyitott adatforrás inicializálási sztringét.
GetProperties Lekéri a csatlakoztatott adatforráshoz jelenleg beállított tulajdonságok értékeit.
GetProperty Lekéri a csatlakoztatott adatforráshoz jelenleg beállított egyetlen tulajdonság értékét.
Nyisd meg Kapcsolatot hoz létre egy szolgáltatóval (adatforrással) a CLSIDhívó által biztosított , ProgIDvagy egy CEnumerator moniker használatával.
OpenFromFileName Megnyitja az adatforrást a felhasználó által megadott fájlnév által megadott fájlból.
OpenFromInitializationString Megnyitja az inicializálási sztring által megadott adatforrást.
OpenWithPromptFileName Lehetővé teszi, hogy a felhasználó kiválasztjon egy korábban létrehozott adathivatkozásfájlt a megfelelő adatforrás megnyitásához.
OpenWithServiceComponents Megnyitja az adatforrás-objektumot az Adathivatkozás párbeszédpanelen.

Megjegyzések

Egy vagy több adatbázis-munkamenet hozható létre egyetlen kapcsolathoz. Ezeket a munkameneteket a CSessionkövetkező jelöli: . A CDataSource::Open parancsot meg kell hívnia a kapcsolat megnyitásához, mielőtt munkamenetet hoz létre a következővel CSession::Open: .

A használat CDataSourcemódjáról a CatDB-mintát tekinthet meg.

CDataSource::Close

A mutató felengedésével bezárja a m_spInit kapcsolatot.

Szemantika

void Close() throw();

CDataSource::GetInitializationString

Egy jelenleg megnyitott adatforrás inicializálási sztringjének lekérése.

Szemantika

HRESULT GetInitializationString(BSTR* pInitializationString,
   bool bIncludePassword = false) throw();

Paraméterek

pInitializationString
[kifelé] Az inicializálási sztringre mutató mutató.

bIncludePassword
[in] true ha a sztring tartalmaz jelszót; egyéb esetben false.

Visszaadott érték

Egy standard HRESULT.

Megjegyzések

Az eredményül kapott inicializálási sztring használatával később újra megnyithatja ezt az adatforrás-kapcsolatot.

CDataSource::GetProperties

A csatlakoztatott adatforrás-objektumhoz kért tulajdonságadatokat adja vissza.

Szemantika

HRESULT GetProperties(ULONG ulPropIDSets,
   constDBPROPIDSET* pPropIDSet,
   ULONG* pulPropertySets,
   DBPROPSET** ppPropsets) const throw();

Paraméterek

Lásd : IDBProperties::GetProperties in the OLE DB Programr's Reference in the Windows SDK.

Visszaadott érték

Egy standard HRESULT.

Megjegyzések

Egyetlen tulajdonság lekéréséhez használja a GetProperty parancsot.

CDataSource::GetProperty

A csatlakoztatott adatforrás-objektum megadott tulajdonságának értékét adja vissza.

Szemantika

HRESULT GetProperty(const GUID& guid,
   DBPROPID propid,
   VARIANT* pVariant) const throw();

Paraméterek

útmutató
[in] A tulajdonság visszaadásához használt tulajdonságkészletet azonosító GUID.

propid
[in] A visszaadni kívánt tulajdonság tulajdonságazonosítója.

pVariant
[kifelé] Mutató arra a változatra, ahol GetProperty a tulajdonság értékét adja vissza.

Visszaadott érték

Egy standard HRESULT.

Megjegyzések

Több tulajdonság lekéréséhez használja a GetProperties parancsot.

CDataSource::Megnyitás

Megnyitja az adatforráshoz való kapcsolatot egy CLSID, vagy CEnumerator moniker használatával, ProgIDvagy egy kereső párbeszédpanelen kéri a felhasználót.

Szemantika

HRESULT Open(const CLSID& clsid,
   DBPROPSET* pPropSet = NULL,
   ULONG nPropertySets = 1) throw();

HRESULT Open(const CLSID& clsid,
   LPCTSTR pName,
   LPCTSTR pUserName = NULL,
   LPCTSTR pPassword = NULL,
   long nInitMode = 0) throw();HRESULT Open(LPCTSTR szProgID,
   DBPROPSET* pPropSet = NULL,
   ULONG nPropertySets = 1) throw();HRESULT Open(LPCTSTR szProgID,
   LPCTSTR pName,  LPCTSTR pUserName = NULL,
   LPCTSTR pPassword = NULL,
   long nInitMode = 0) throw();

HRESULT Open(const CEnumerator& enumerator,
   DBPROPSET* pPropSet = NULL,
   ULONG nPropertySets = 1) throw();

HRESULT Open(const CEnumerator& enumerator,
   LPCTSTR pName,
   LPCTSTR pUserName = NULL,
   LPCTSTR pPassword = NULL,
   long nInitMode = 0) throw();

HRESULT Open(HWND hWnd = GetActiveWindow(),
   DBPROMPTOPTIONS dwPromptOptions = DBPROMPTOPTIONS_WIZARDSHEET) throw();

HRESULT Open(LPCWSTR szProgID,
   DBPROPSET* pPropSet = NULL,
   ULONG nPropertySets = 1) throw();

HRESULT Open(LPCSTR szProgID,
   LPCTSTR pName,LPCTSTR pUserName = NULL,
   LPCTSTR pPassword = NULL,
   long nInitMode = 0) throw();

Paraméterek

clsid
[in] Az CLSID adatszolgáltató neve.

pPropSet
[in] Mutató a beállítandó tulajdonságokat és értékeket tartalmazó DBPROPSET-struktúrák tömbje felé. Tekintse meg az OLE DB programozói referenciatulajdonságkészleteit és tulajdonságcsoportait a Windows SDK-ban.

nPropertySets
[in] A pPropSet argumentumban átadott DBPROPSET-struktúrák száma.

pName
[in] Annak az adatbázisnak a neve, amelyhez csatlakozni szeretne.

pUserName
[in] A felhasználó neve.

pPassword
[in] A felhasználó jelszava.

nInitMode
[in] Adatbázis-inicializálási mód. Az érvényes inicializálási módok listáját az OLE DB programozói hivatkozásában , a Windows SDK-ban találja. Ha az nInitMode értéke nulla, a kapcsolat megnyitásához használt tulajdonságkészlet nem tartalmaz inicializálási módot.

szProgID
[in] Programazonosító.

Enumerátor
[in] Egy CEnumerator objektum, amely egy moniker beszerzésére szolgál a kapcsolat megnyitásához, ha a hívó nem ad meg egy CLSID.

hWnd
[in] Lépjen arra az ablakra, amely a párbeszédpanel szülője lesz. A hWnd paramétert használó függvény túlterhelése automatikusan meghívja a Szolgáltatásösszetevőket; részletekért lásd: Megjegyzések.

dwPromptOptions
[in] Meghatározza a megjelenítendő lokátor párbeszédpanel stílusát. A lehetséges értékekért tekintse meg az Msdasc.h fájlt.

Visszaadott érték

Egy standard HRESULT.

Megjegyzések

A hWnd paramétert használó metódus túlterhelése megnyit egy adatforrás-objektumot a oledb32.dllszolgáltatásösszetevőivel; Ez a DLL tartalmazza a szolgáltatásösszetevők olyan funkcióinak implementálását, mint az erőforráskészletezés, az automatikus tranzakcióbesorolás stb. További információkért tekintse meg az OLE DB referenciáját az OLE DB programozói útmutatójában.

A metódus túlterheli a hWnd paramétert nem használó adatforrás-objektumot anélkül, hogy a oledb32.dllszolgáltatásösszetevőit használták. Az ezekkel a függvényekkel megnyitott CDataSource-objektumok nem fogják tudni használni a szolgáltatásösszetevők egyik funkcióját sem.

Example

Az alábbi kód bemutatja, hogyan nyithat meg Egy Jet 4.0-adatforrást OLE DB-sablonokkal. A Jet-adatforrást OLE DB-adatforrásként kezeli. A hívásnak Open azonban két tulajdonságkészletre van szüksége: az egyik a DBPROPSET_DBINIT, a másik a DBPROPSET_JETOLEDB_DBINIT, hogy beállíthassa DBPROP_JETOLEDB_DATABASEPASSWORD.

CDBPropSet rgDBPropSet[2];  // Declare two property sets;
                            // set properties elsewhere as appropriate.

hr = m_DataSource.Open(szProgId, rgDBPropSet, 2);

CDataSource::OpenFromFileName

Megnyitja az adatforrást a felhasználó által megadott fájlnév által megadott fájlból.

Szemantika

HRESULT OpenFromFileName(LPCOLESTR szFileName) throw();

Paraméterek

szFileName
[in] A fájl neve, általában adatforrás-kapcsolat (. UDL) fájl.

Az adatkapcsolatfájlokról (.udl-fájlokról) további információt a Data Link API áttekintésében talál a Windows SDK-ban.

Visszaadott érték

Egy standard HRESULT.

Megjegyzések

Ez a metódus egy adatforrás-objektumot nyit meg a oledb32.dllszolgáltatásösszetevőivel; Ez a DLL tartalmazza a szolgáltatásösszetevők olyan funkcióinak implementálását, mint az erőforráskészletezés, az automatikus tranzakcióbesorolás stb. További információkért tekintse meg az OLE DB referenciáját az OLE DB programozói útmutatójában.

CDataSource::OpenFromInitializationString

Megnyitja a felhasználó által megadott inicializálási sztring által megadott adatforrást.

Szemantika

HRESULT OpenFromInitializationString(LPCOLESTR szInitializationString,
   bool fPromptForInfo= false) throw();

Paraméterek

szInitializationString
[in] Az inicializálási sztring.

fPromptForInfo
[in] Ha ez az argumentum be van állítva true, akkor OpenFromInitializationString a DBPROP_INIT_PROMPT tulajdonságot DBPROMPT_COMPLETEREQUIRED értékre állítja, amely azt határozza meg, hogy a rendszer csak akkor kérje meg a felhasználót, ha további információra van szükség. Ez olyan helyzetekben hasznos, amikor az inicializálási sztring egy jelszót igénylő adatbázist határoz meg, de a sztring nem tartalmazza a jelszót. A rendszer jelszót (vagy bármilyen más hiányzó információt) kér a felhasználótól, amikor megpróbál csatlakozni az adatbázishoz.

Az alapértelmezett érték az false, amely azt határozza meg, hogy a rendszer soha ne kérje a felhasználót (DBPROP_INIT_PROMPT DBPROMPT_NOPROMPT értékre állítja).

Visszaadott érték

Egy standard HRESULT.

Megjegyzések

Ez a metódus egy adatforrás-objektumot nyit meg a oledb32.dllszolgáltatásösszetevőivel; Ez a DLL tartalmazza a szolgáltatásösszetevők olyan funkcióinak implementálását, mint az erőforráskészletezés, az automatikus tranzakcióbesorolás stb.

CDataSource::OpenWithPromptFileName

Ez a metódus egy párbeszédpanellel kéri a felhasználót, majd megnyitja az adatforrást a felhasználó által megadott fájl használatával.

Szemantika

HRESULT OpenWithPromptFileName(HWND hWnd = GetActiveWindow(   ),
   DBPROMPTOPTIONS dwPromptOptions = DBPROMPTOPTIONS_NONE,
   LPCOLESTR szInitialDirectory = NULL) throw();

Paraméterek

hWnd
[in] Lépjen arra az ablakra, amely a párbeszédpanel szülője lesz.

dwPromptOptions
[in] Meghatározza a megjelenítendő lokátor párbeszédpanel stílusát. A lehetséges értékekért tekintse meg az Msdasc.h fájlt.

szInitialDirectory
[in] A lokátor párbeszédpanelen megjelenítendő kezdeti könyvtár.

Visszaadott érték

Egy standard HRESULT.

Megjegyzések

Ez a metódus egy adatforrás-objektumot nyit meg a oledb32.dllszolgáltatásösszetevőivel; Ez a DLL tartalmazza a szolgáltatásösszetevők olyan funkcióinak implementálását, mint az erőforráskészletezés, az automatikus tranzakcióbesorolás stb. További információkért tekintse meg az OLE DB referenciáját az OLE DB programozói útmutatójában.

CDataSource::OpenWithServiceComponents

Megnyitja az adatforrás-objektumot a oledb32.dllszolgáltatásösszetevőivel.

Szemantika

HRESULT OpenWithServiceComponents (const CLSID clsid,
   DBPROPSET* pPropset = NULL,
   ULONG ulPropSets = 1);

HRESULT OpenWithServiceComponents (LPCSTR szProgID,
   DBPROPSET* pPropset = NULL,
   ULONG ulPropSets = 1);

Paraméterek

clsid
[in] Egy CLSID adatszolgáltató neve.

szProgID
[in] Egy adatszolgáltató programazonosítója.

pPropset
[in] Mutató a beállítandó tulajdonságokat és értékeket tartalmazó DBPROPSET-struktúrák tömbje felé. Tekintse meg az OLE DB programozói referenciatulajdonságkészleteit és tulajdonságcsoportait a Windows SDK-ban. Ha az adatforrás-objektum inicializálva van, a tulajdonságoknak az Adatforrás tulajdonságcsoporthoz kell tartoznia. Ha ugyanaz a tulajdonság többször van megadva a pPropsetben, akkor a használt érték szolgáltatóspecifikus. Ha az ulPropSets értéke nulla, a paraméter figyelmen kívül lesz hagyva.

ulPropSets
[in] A pPropSet argumentumban átadott DBPROPSET-struktúrák száma. Ha ez nulla, a szolgáltató figyelmen kívül hagyja a pPropsetet.

Visszaadott érték

Egy standard HRESULT.

Megjegyzések

Ez a metódus egy adatforrás-objektumot nyit meg a oledb32.dllszolgáltatásösszetevőivel; Ez a DLL tartalmazza a szolgáltatásösszetevők olyan funkcióinak implementálását, mint az erőforráskészletezés, az automatikus tranzakcióbesorolás stb. További információkért tekintse meg az OLE DB referenciáját az OLE DB programozói útmutatójában.

Lásd még

OLE DB fogyasztói sablonok
OLE DB fogyasztói sablonok referenciája