Aracılığıyla paylaş


Kayıt kümesi: Mimari (ODBC)

Bu konu MFC ODBC sınıfları için geçerlidir.

Bu konuda bir kayıt kümesi nesnesinin mimarisini oluşturan veri üyeleri açıklanmıştır:

  • Alan veri üyeleri

  • Parametre verisi üyeleri

  • M_nFields ve m_nParams veri üyeleri kullanmak

Not

Bu konu toplu satır yakalamanın uygulanmadığı CRecordset'ten türetilen nesnelere uygulanır. Toplu satır getirme uygulanmışsa, mimari benzerdir. Farklılıkları anlamak için bkz. Kayıt Kümesi: Kayıtları Toplu Olarak Yakalama (ODBC).

Örnek Sınıf

MFC ODBC Tüketici Sihirbazı'nı Sınıf Ekle sihirbazından, CRecordset türetilen bir kayıt kümesi sınıfını bildirmek için aşağıdaki, elde edilen sınıf aşağıda gösterilen genel yapıya sahiptir:

class CCourse : public CRecordset
{
public:
   CCourse(CDatabase* pDatabase = NULL);
   ...
   CString m_strCourseID;
   CString m_strCourseTitle;
   CString m_strIDParam;
};

Sınıfın başında, sihirbaz alan veri üyeleri kümesini yazar. Sınıfı oluştururken, bir veya daha fazla alan veri üyesi belirtmeniz gerekir. Sınıf, örnek sınıf gibi parametreliyse (m_strIDParam veri üyesi ile), parametresi veri üyelerini elle eklemeniz gerekir. Sihirbaz bir sınıfa parametreler eklemeyi desteklemez.

Alan Veri Üyeleri

Kayıt kümesi sınıfınızın en önemli üyeleri alan verisi üyeleridir. Veri kaynağından seçtiğiniz her sütun için sınıf, ilgili sütun için uygun veri türünün veri üyesini içerir. Örneğin, bu konunun başında gösterilen örnek sınıf iki alan üyesine sahiptir, bunların her biri, m_strCourseID ve m_strCourseTitle adı verilen CString türündedir.

Kayıt kümesi bir kayıt kümesini seçtiğinde, framework otomatik olarak geçerli kaydın sütunlarını ( çağrısından sonra ilk kayıt geçerlidir) nesnenin alan veri üyelerine bağlar. Başka bir deyişle, altyapı, uygun alan veri öğesini kayıt sütunu içeriğinin depolandığı bir arabellek olarak kullanır.

Kullanıcı yeni bir kayda kayarken çerçeve geçerli kaydı temsil etmek için alan veri üyelerini kullanır. Çerçeve önceki kayıt değerlerini değiştirerek alanı veri üyelerini yeniler. Alan veri üyeleri geçerli kaydı güncelleştirmek ve yeni kayıtlar eklemek için de kullanılır. Kayıt güncelleştirme işleminin bir parçası olarak, değerleri doğrudan uygun alan veri üyesine ya da üyelerine atayarak güncelleştirme değerlerini belirtirsiniz.

Parametre Verisi Üyeleri

Sınıf parametreli ise bir veya daha fazla veri üyesi bulunur. Parametreli bir sınıf, bir kayıt kümesi sorgusunu çalışma zamanında elde edilen veya hesaplanan bilgilere dayandırmanızı sağlar.

Genellikle parametre, aşağıdaki örnekte olduğu gibi seçimi daraltmanıza yardımcı olur. Bu konunun başındaki örnek sınıfına dayalı olarak, kayıt kümesi nesnesi şu SQL deyimini yürütebilir:

SELECT CourseID, CourseTitle FROM Course WHERE CourseID = ?

"?", çalıştırma zamanı sırasında sağladığınız parametre değeri için bir yer tutucudur. Bir kayıt kümesi oluşturduğunuzda ve m_strIDParam veri üyesini MATH101'e ayarladığınızda kayıt kümesi için etkili SQL deyimi aşağıdaki gibi olur:

SELECT CourseID, CourseTitle FROM Course WHERE CourseID = MATH101

Parametre verisi üyelerini tanımlayarak, çerçeveyi SQL dizesindeki parametreler hakkında bilgilendirirsiniz. Çerçeve, ODBC'nin yer tutucunun yerine konacak değerlerin nereden alınacağını bilmesini sağlayan parametreyi bağlar. Örnekte, sonuçlanan kayıt kümesi, değeri MATH101 olan bir CourseID sütunlu Kurs tablosundan raporlar içerir. Bu kaydın belirtilen tüm sütunları seçilir. Gerektiği kadar çok parametre (ve yer tutucular) belirtebilirsiniz.

Not

MFC, parametrelerle başta metin değişikliği olmak üzere hiçbir işlem yapmaz. Bunun yerine, MFC ODBC'ye parametreyi alacağı yeri söyler; ODBC veriyi alır ve gerekli parametrelemeyi gerçekleştirir.

Not

Parametrelerin sırası önemlidir: Bununla ve parametrelerle ilgili daha fazla bilgi için bkz. Kayıt Kümesi: Bir Kayıt Kümesini Parametreleştirme (ODBC).

M_nFields ve m_nParams kullanmak

Bir sihirbaz sınıfınız için bir oluşturucu yazdığında, aynı zamanda sınıftaki alan veri üyelerinin sayısını belirten m_nFields veri üyesini de başlatır. Sınıfınıza herhangi bir parameters öğesi eklerseniz, aynı zamanda da parametre veri üyelerinin sayısını belirten m_nParams veri üyesi için bir başlatma da eklemelisiniz. Çerçeve veri üyeleri ile çalışmak için bu değerleri kullanır.

Daha fazla bilgi ve örnekler için bkz. Kayıt Alanı Değişimi: RFX Kullanma.

Ayrıca bkz.

Kavramlar

Kayıt Kümesi (ODBC)

Kayıt Kümesi: Tablo için Sınıf Bildirme (ODBC)

Kayıt Alanı Değişimi (RFX)