Aşağıdaki formu CDaoFieldInfo yapıya sahiptir:
struct CDaoFieldInfo
{
nbsp; CString m_str&Name; / / Birincil
kısa m_nType; / / Birincil
uzun m_lSize; / / Birincil
uzun m_lAttributes; / / Birincil
kısa m_nOrdinalPosition; / / İkincil
bool m_bRequired; / / İkincil
bool m_bAllowZeroLength; / / İkincil
uzun m_lCollatingOrder; / / İkincil
CString m_strForeignName; / / İkincil
CString m_strSourceField; / / İkincil
CString m_strSourceTable; / / İkincil
CString m_strValidationRule; / / All
CString m_strValidationText; / / All
CString m_strDefaultValue; / / All
}
CDaoFieldInfo yapısı için veri erişim nesneleri (dao) tanımlanmış bir field nesnesi hakkında bilgi içerir. İlköğretim, ortaöğretim ve her şeyden başvuruları nasıl bilgi sınıflarında, CDaoTableDef, CDaoQueryDefve CDaoRecordset GetFieldInfo üye işlevi tarafından döndürülen belirtmek.
Field nesnelerinin bir mfc sınıfı tarafından temsil değil. Bunun yerine, alan nesneler koleksiyonları mfc nesneleri aşağıdaki sınıfların temel dao nesneleri içerir: CDaoTableDef, CDaoRecordsetve CDaoQueryDef. Bu sınıflar alan bilgi bireysel bazı öğelere erişmek için üye işlevleri sağlamak, veya onları tek seferde bir CDaoFieldInfo nesnesi ile içeren nesne GetFieldInfo üye işlevini çağırarak erişebilirsiniz.
Nesne özelliklerini incelemek için kullanımının yanı sıra, CDaoFieldInfo bir tabledef yeni alanlar oluşturmak için bir girdi parametresini oluşturmak için de kullanabilirsiniz. Bu görev için daha basit seçenekleri vardır, ancak denetleyebilmek isterseniz, bir CDaoFieldInfo parametre CDaoTableDef::CreateField sürümünü kullanabilirsiniz.
Üyeler
m_strName
Alan nesnesini benzersiz olarak adlandıran. Ayrıntılar için dao Yardımı'nda "ad özelliği" konusuna bakın.
m_nType
Alanın veri türünü gösteren bir değeri. Ayrıntılar için dao Yardımı'nda "türü özelliği" konusuna bakın. Bu özelliğin değeri aşağıdakilerden biri olabilir:
&Notnbsp; Dize veri türleri için ikili veri kullanmayın. Bu veri yükü artmış ve olasılıkla beklenmeyen çeviri kaynaklanan Unicode/ANSI çeviri katmanı geçmesine neden olur.
m_lSize
Metin ya da metin veya sayısal değer içeren bir alan nesnesi sabit boyutu içeren bir dao field nesnesinin bayt cinsinden en büyük boyutunu gösteren bir değeri. Ayrıntılar için dao Yardımı'nda "boyutu özelliği" konusuna bakın. Boyutları aşağıdaki değerlerden biri olabilir:
| Türü | Boyut (bayt) | Açıklama |
| dbBoolean | 1 bayt | Evet/Hayır (True/False ile aynı) |
| dbByte | 1 | Bayt |
| dbInteger | 2 | Tamsayı |
| dbLong | 4 | Uzun |
| dbCurrency | 8 | Para birimi (COleCurrency) |
| dbSingle | 4 | Tek |
| dbDouble | 8 | Çift |
| dbDate | 8 | Tarih/Saat (COleDateTime) |
| dbText | 1 - 255 | Metin (CString) |
| dbLongBinary | 0 | Uzun ikili (ole nesne; CByteArray; yerine CLongBinarykullanın) |
| dbMemo | 0 | Not (CString) |
| dbGUID | 16 | Genel olarak benzersiz tanımlayıcı/evrensel benzersiz bir uzak yordam çağrıları ile kullanılan tanımlayıcı. |
m_lAttributes
Bir tabledef, recordset, querydef veya Index nesnesi tarafından bulunan bir field nesnesinin özelliklerini belirtir. Döndürülen değer-ebilmek var olmak c++ düzey veya (|) işleci ile oluşturulan bu sabitleri toplamı:
Bu özellik ayarını denetleme, c++ Bitsel kullanabilirsiniz- ve belirli bir öznitelik için test operatörü (amp;). Birden çok öznitelik ayarlarken, onlara uygun sabitlerin Bitsel or (|) işleci ile birleştirerek birleştirebilirsiniz. &Ayrıntılar için dao Yardımı'nda "Attributes özelliği" konusuna bakın.
m_nOrdinalPosition
Diğer alanlara göre görüntülenecek bir dao alan nesnesi tarafından temsil alanı istediğiniz sayısal sırasını belirten bir değer. Bu özelliği ile CDaoTableDef::CreateFieldayarlayabilirsiniz. Ayrıntılar için dao Yardımı'nda "OrdinalPosition özelliği" konusuna bakın.
m_bRequired
Bir dao field nesnesi Null olmayan bir değer gerekip gerekmediğini gösterir. Bu özellik trueise, alanın Null değeri izin vermez. Eğer yanlış, ayarlanmış gerekli alan Null değerlerin yanı sıra AllowZeroLength ve ValidationRule özellik ayarları tarafından belirtilen koşulları karşılayan değerleri içerebilir. Ayrıntılar için dao Yardımı'nda "özellik gerekli" konusuna bakın. Bu özellik ile CDaoTableDef::CreateField bir tabledef için ayarlayabilirsiniz.
m_bAllowZeroLength
Gösterir yoksa boş bir dize ("") bir metin veya Not veri türüne sahip bir dao alan nesnesinin geçerli bir değer. Bu özellik trueise, boş bir dize geçerli bir değerdir. Bu özellik bir alanın değerini ayarlamak için boş bir dize kullanamazsınız sağlamak için yanlış olarak ayarlayabilirsiniz. Ayrıntılar için dao Yardımı'nda "AllowZeroLength özelliğini" konusuna bakın. Bu özellik ile CDaoTableDef::CreateField bir tabledef için ayarlayabilirsiniz.
m_lCollatingOrder
Metin dize karşılaştırma veya sıralama için sıralama sırasını belirtir. Ayrıntılar için "Özelleştirme Windows kayıt defteri ayarları için veri erişimi" dao Yardım konusuna bakın. Döndürülen olası değerler listesi için bkz: CDaoDatabaseInfo yapısı m_lCollatingOrder üyesi. Bu özellik ile CDaoTableDef::CreateField bir tabledef için ayarlayabilirsiniz.
m_strForeignName
Bir ilişkisinde dao alan nesnesinin birincil tablodaki bir alana karşılık gelen yabancı tablo adını belirten bir değer. Ayrıntılar için dao Yardımı'nda "ForeignName özelliği" konusuna bakın.
m_strSourceField
Bir dao field nesnesinin bir tabledef, recordset veya querydef nesnesinin içerdiği verileri orijinal kaynak alanı adını gösterir. Bu özellik, bir field nesnesi ile ilişkilendirilmiş özgün alan adını gösterir. Örneğin, orijinal kaynak adı temel tablodaki alanın adını ilgisiz olan bir sorgu alanı verileri belirlemek için bu özelliği kullanabilirsiniz. Ayrıntılar için dao Yardımı'nda "SourceField, SourceTable özellikleri" konusuna bakın. Bu özellik ile CDaoTableDef::CreateField bir tabledef için ayarlayabilirsiniz.
m_strSourceTable
Bir dao field nesnesinin bir tabledef, recordset veya querydef nesnesinin içerdiği verileri orijinal kaynak tablo adını gösterir. Bu özellik, bir field nesnesi ile ilişkilendirilmiş özgün tablo adını gösterir. Örneğin, orijinal kaynak adı temel tablodaki alanın adını ilgisiz olan bir sorgu alanı verileri belirlemek için bu özelliği kullanabilirsiniz. Ayrıntılar için dao Yardımı'nda "SourceField, SourceTable özellikleri" konusuna bakın. Bu özellik ile CDaoTableDef::CreateField bir tabledef için ayarlayabilirsiniz.
m_strValidationRule
O değişti ya da tabloya eklenen, bir alandaki verileri doğrulayan bir değer. Ayrıntılar için dao Yardımı'nda "ValidationRule özelliği" konusuna bakın. Bu özellik ile CDaoTableDef::CreateField bir tabledef için ayarlayabilirsiniz.
TableDef ilgili bilgiler için bkz: CDaoTableDefInfo yapısı m_strValidationRule üyesi.
m_strValidationText
Uygulamanız bir dao alan nesne değeri ValidationRule özellik ayarı tarafından belirtilen geçerlilik kuralı tatmin etmez Eğer görüntüleyen ileti metnini belirtir değeri. Ayrıntılar için dao Yardımı'nda "ValidationText özelliği" konusuna bakın. Bu özellik ile CDaoTableDef::CreateField bir tabledef için ayarlayabilirsiniz.
m_strDefaultValue
Bir dao field nesnesinin varsayılan değeri. Yeni bir kayıt oluşturulduğunda, DefaultValue özellik ayarı otomatik olarak alan için değer olarak girilir. Ayrıntılar için dao Yardımı'nda "DefaultValue özelliğini" konusuna bakın. Bu özellik ile CDaoTableDef::CreateField bir tabledef için ayarlayabilirsiniz.
Yorumlar
GetFieldInfo üye işlevi (Toplam alanı içeren sınıf) tarafından alınan bilgileri CDaoFieldInfo yapısında depolanır. Olan alanları field nesnesinde tutulur içeren nesne GetFieldInfo üye işlevini çağırın. CDaoFieldInfo de hata ayıklama yapılarında bir döküm üye işlevi tanımlar. Dump CDaoFieldInfo nesnesinin içeriğini dökümü için kullanabileceğiniz.
Bu ve diğer mfc dao bilgisi yapılarını kullanma hakkında daha fazla bilgi için bkz: yazı dao koleksiyonları: nesneleri dao hakkında bilgi edinme Visual c++ Programcı Kılavuzu.
Ayrıca bkz: CDaoTableDef::GetFieldInfo, CDaoRecordset::GetFieldInfo, CDaoQueryDef::GetFieldInfo