Aracılığıyla paylaş


CDynamicStringAccessor Sınıfı

Veritabanı şeması (veritabanının temel yapısı) hakkında bilginiz olmadığında bir veri kaynağına erişmenizi sağlar.

Sözdizimi

template< typename BaseType, DBTYPEENUM OleDbType >
class CDynamicStringAccessorT : public CDynamicAccessor

Gereksinimler

Üst bilgi: atldbcli.h

Üyeler

Yöntemler

Veri Akışı Adı Açıklama
GetString Belirtilen sütun verilerini dize olarak alır.
SetString Belirtilen sütun verilerini dize olarak ayarlar.

Açıklamalar

CDynamicAccessor, sağlayıcı tarafından bildirilen yerel biçimde veri isteğinde bulunurken, CDynamicStringAccessor sağlayıcının veri deposundan erişilen tüm verileri dize verileri olarak getirmesini istemektedir. Bu, özellikle veri deposunun içeriğini görüntüleme veya yazdırma gibi veri deposundaki değerlerin hesaplanması gerektirmeyen basit görevler için kullanışlıdır.

Veri deposundaki sütun verilerinin yerel türü önemli değildir; sağlayıcı veri dönüştürmeyi destekleyeabildiği sürece verileri dize biçiminde sağlayacaktır. Sağlayıcı yerel veri türünden bir dizeye (yaygın olmayan) dönüştürmeyi desteklemiyorsa, istekte bulunan çağrı DB_S_ERRORSOCCURED başarı değerini döndürür ve ilgili sütunun durumu DBSTATUS_E_CANTCONVERTVALUE ile ilgili bir dönüştürme sorununu gösterir.

Sütun bilgilerini almak için yöntemleri kullanın CDynamicStringAccessor . Çalışma zamanında dinamik olarak bir erişimci oluşturmak için bu sütun bilgilerini kullanırsınız.

Sütun bilgileri, bu sınıf tarafından oluşturulan ve yönetilen bir arabellekte depolanır. GetString kullanarak arabellekten veri alın veya SetString kullanarak arabelleğe depolayın.

Dinamik erişimci sınıflarını kullanma hakkında bir tartışma ve örnekler için bkz . Dinamik Erişimcileri Kullanma.

CDynamicStringAccessor::GetString

Belirtilen sütun verilerini dize olarak alır.

Sözdizimi

BaseType* GetString(DBORDINAL nColumn) const throw();

BaseType* GetString(const CHAR* pColumnName) const throw();

BaseType* GetString(const WCHAR* pColumnName) const throw();

Parametreler

nSütun
[in] Sütun numarası. Sütun numaraları 1 ile başlar. 0 değeri varsa yer işareti sütununa başvurur.

pColumnName
[in] Sütun adını içeren bir karakter dizesi işaretçisi.

Dönüş Değeri

Belirtilen sütundan alınan dize değerinin işaretçisi. Değer türündedir ve BaseType_UNICODE tanımlanıp tanımlanmadığına bağlı olarak CHAR veya WCHAR olur. Belirtilen sütun bulunamazsa NULL döndürür.

Açıklamalar

İkinci geçersiz kılma formu, sütun adını ANSI dizesi olarak alır. Üçüncü geçersiz kılma formu, sütun adını Unicode dizesi olarak alır.

CDynamicStringAccessor::SetString

Belirtilen sütun verilerini dize olarak ayarlar.

Sözdizimi

HRESULT SetString(DBORDINAL nColumn,
   BaseType* data) throw();

HRESULT SetString(const CHAR* pColumnName,
   BaseType* data) throw();

HRESULT SetString(const WCHAR* pColumnName,
   BaseType* data) throw();

Parametreler

nSütun
[in] Sütun numarası. Sütun numaraları 1 ile başlar. 0'ın özel değeri varsa yer işareti sütununa başvurur.

pColumnName
[in] Sütun adını içeren bir karakter dizesi işaretçisi.

data
[in] Belirtilen sütuna yazılacak dize verilerinin işaretçisi.

Dönüş Değeri

Belirtilen sütunun ayarlanacağı dize değerinin işaretçisi. Değer türündedir ve BaseType_UNICODE tanımlanıp tanımlanmadığına bağlı olarak CHAR veya WCHAR olur.

Açıklamalar

İkinci geçersiz kılma formu sütun adını ANSI dizesi olarak, üçüncü geçersiz kılma formu ise sütun adını Unicode dizesi olarak alır.

_SECURE_ATL sıfır olmayan bir değere sahip olacak şekilde tanımlanmışsa, giriş veri dizesi başvurulan veri sütununun izin verilen en uzun uzunluğundan uzunsa bir çalışma zamanı onaylama hatası oluşturulur. Aksi takdirde, izin verilen uzunluk üst sınırından uzunsa giriş dizesi kesilir.

Ayrıca bkz.

OLE DB Tüketici Şablonları
OLE DB Tüketici Şablonları Başvurusu
CAccessor Sınıfı
CDynamicParameterAccessor Sınıfı
CManualAccessor Sınıfı
CDynamicAccessor Sınıfı
CDynamicStringAccessorA Sınıfı
CDynamicStringAccessorW Sınıfı
CXMLAccessor Sınıfı