La struttura CDaoFieldInfo ha la seguente forma:
struct CDaoFieldInfo
{
nbsp; CString m_str&Name; / / Primaria
breve m_nType; / / Primaria
lunga m_lSize; / / Primaria
lunga m_lAttributes; / / Primaria
breve m_nOrdinalPosition; / / Secondarie
BOOL m_bRequired; / / Secondarie
BOOL m_bAllowZeroLength; / / Secondarie
lunga m_lCollatingOrder; / / Secondarie
CString m_strForeignName; / / Secondarie
CString m_strSourceField; / / Secondarie
CString m_strSourceTable; / / Secondarie
CString m_strValidationRule; / / All
CString m_strValidationText; / / All
CString m_strDefaultValue; / / All
}
La struttura CDaoFieldInfo contiene informazioni su un oggetto campo definito per data access objects (DAO). I riferimenti alle primarie, secondarie e tutti sopra indicano come le informazioni vengono restituite dalla funzione membro GetFieldInfo nelle classi CDaoTableDef, CDaoQueryDefe CDaoRecordset.
Gli oggetti Field non sono rappresentati da una classe MFC. Invece, gli oggetti DAO MFC gli oggetti delle classi seguenti sottostanti contengono collezioni di oggetti in campo: CDaoTableDef, CDaoRecordsete CDaoQueryDef. Queste classi forniscono funzioni membro per accedere alcuni singoli elementi di informazione in campo, oppure si possono accedervi contemporaneamente con un oggetto CDaoFieldInfo chiamando la funzione membro GetFieldInfo dell'oggetto contenitore.
Oltre a suo uso per l'esame di proprietà dell'oggetto, è possibile utilizzare CDaoFieldInfo per la costruzione di un parametro di input per la creazione di nuovi campi in un oggetto tabledef. Più semplici opzioni sono disponibili per questo compito, ma se volete un controllo più preciso, è possibile utilizzare la versione di CDaoTableDef::CreateField che accetta un parametro CDaoFieldInfo.
Membri
m_strName
In modo univoco i nomi di oggetto field. Per informazioni dettagliate, vedere l'argomento "Nome proprietà" nell'aiuto di DAO.
m_nType
Un valore che indica il tipo di dati del campo. Per informazioni dettagliate, vedere l'argomento "Proprietà del tipo" nell'aiuto di DAO. Il valore di questa proprietà può essere uno dei seguenti:
&Notanbsp; Non utilizzare tipi di dati stringa per i dati binari. Questo fa sì che i dati di passare attraverso lo strato di traduzione Unicode/ANSI, con conseguente maggiore sovraccarico e forse inaspettata di traduzione.
m_lSize
Un valore che indica la dimensione massima, espressa in byte, di un oggetto campo DAO che contiene il testo o la dimensione fissa di un oggetto di campo che contiene i valori di testo o numerica. Per informazioni dettagliate, vedere l'argomento "Proprietà Size" nella guida di DAO. Dimensioni possono essere uno dei seguenti valori:
| Tipo | Dimensione (Bytes) | Descrizione |
| dbBoolean | 1 byte | Sì/No (lo stesso come vero/falso) |
| dbByte | 1 | Byte |
| dbInteger | 2 | Numero intero |
| dbLong | 4 | Lunga |
| dbCurrency | 8 | Valuta (COleCurrency) |
| dbSingle | 4 | Singolo |
| dbDouble | 8 | Double |
| dbDate | 8 | Data/ora (COleDateTime) |
| dbText | 1 - 255 | Testo (CString) |
| dbLongBinary | 0 | Binario lungo (oggetto OLE; CByteArray; utilizzare invece di CLongBinary) |
| dbMemo | 0 | Memo (CString) |
| dbGUID | 16 | Globalmente Unique Identifier/universalmente identificatore univoco utilizzato con chiamate a procedura remota. |
m_lAttributes
Specifica le caratteristiche di un campo oggetto contenuto in un oggetto tabledef, recordset, querydef o oggetto index. Il valore restituito può essere una somma di queste costanti, creato con l'operatore OR bit per bit (|) C++:
Quando si verifica l'impostazione di questa proprietà, è possibile utilizzare il C++ bit per bit- E operatore (amp;) per testare un attributo specifico. Quando si impostano più attributi, è possibile combinare combinando le costanti appropriate con l'operatore OR bit per bit (|). Per informazioni dettagliate, vedere l'argomento "Proprietà &Attributes" nella guida di DAO.
m_nOrdinalPosition
Un valore che specifica l'ordine numerico in cui si desidera che un campo rappresentato da un oggetto campo DAO per essere visualizzato rispetto ad altri campi. È possibile impostare questa proprietà con CDaoTableDef::CreateField. Per informazioni dettagliate, vedere l'argomento "Proprietà OrdinalPosition" nell'aiuto di DAO.
m_bRequired
Indica se un oggetto campo DAO richiede un valore non Null. Se questa proprietà è TRUE, il campo non consente un valore Null. Se richiesto è impostata su FALSE, il campo può contenere valori Null, così come i valori che soddisfano le condizioni specificate da impostazioni delle proprietà Consenti lunghezza zero e ValidationRule. Per informazioni dettagliate, vedere l'argomento "Proprietà necessaria" nella guida di DAO. È possibile impostare questa proprietà per un oggetto tabledef con CDaoTableDef::CreateField.
m_bAllowZeroLength
Indica se una stringa vuota ("") è un valore valido di un oggetto DAO campo di un tipo di dati Text o Memo. Se questa proprietà è TRUE, una stringa vuota è un valore valido. È possibile impostare questa proprietà su FALSE per assicurarsi di non utilizzare una stringa vuota per impostare il valore di un campo. Per informazioni dettagliate, vedere l'argomento "Proprietà Consenti lunghezza zero" nella guida di DAO. È possibile impostare questa proprietà per un oggetto tabledef con CDaoTableDef::CreateField.
m_lCollatingOrder
Specifica la sequenza di ordinamento di testo per il confronto tra stringhe o dell'ordinamento. Per informazioni dettagliate, vedere l'argomento "Personalizzazione Windows Registry Settings per dati Access" nella guida di DAO. Per un elenco dei possibili valori restituiti, vedere il membro m_lCollatingOrder della struttura CDaoDatabaseInfo . È possibile impostare questa proprietà per un oggetto tabledef con CDaoTableDef::CreateField.
m_strForeignName
Un valore che, in una relazione specifica il nome dell'oggetto DAO campo in una tabella esterna che corrisponde a un campo di una tabella primaria. Per informazioni dettagliate, vedere l'argomento "Proprietà ForeignName" nell'aiuto di DAO.
m_strSourceField
Indica il nome del campo che è la fonte originale dei dati per un oggetto di campo DAO contenuto in un oggetto tabledef, recordset o di un oggetto querydef. Questa proprietà indica il nome originale del campo associato a un oggetto field. Ad esempio, si potrebbe utilizzare questa proprietà per determinare la fonte originale dei dati di un campo di query, il cui nome è correlato al nome del campo nella tabella sottostante. Per informazioni dettagliate, vedere l'argomento "CampoOrigine, SourceTable Proprietà" nell'aiuto di DAO. È possibile impostare questa proprietà per un oggetto tabledef con CDaoTableDef::CreateField.
m_strSourceTable
Indica il nome della tabella che è la fonte originale dei dati per un oggetto di campo DAO contenuto in un oggetto tabledef, recordset o di un oggetto querydef. Questa proprietà indica il nome della tabella originale associato a un oggetto field. Ad esempio, si potrebbe utilizzare questa proprietà per determinare la fonte originale dei dati di un campo di query, il cui nome è correlato al nome del campo nella tabella sottostante. Per informazioni dettagliate, vedere l'argomento "CampoOrigine, SourceTable Proprietà" nell'aiuto di DAO. È possibile impostare questa proprietà per un oggetto tabledef con CDaoTableDef::CreateField.
m_strValidationRule
Un valore che convalida i dati in un campo come è cambiato o aggiunto a una tabella. Per informazioni dettagliate, vedere l'argomento "Proprietà ValidationRule" nella guida di DAO. È possibile impostare questa proprietà per un oggetto tabledef con CDaoTableDef::CreateField.
Per informazioni correlate su tabledefs, vedere il membro m_strValidationRule della struttura CDaoTableDefInfo.
m_strValidationText
Un valore che specifica il testo del messaggio che l'applicazione viene visualizzato se il valore di un oggetto campo DAO non soddisfa la regola di convalida specificata dall'impostazione della proprietà ValidationRule. Per informazioni dettagliate, vedere l'argomento "Proprietà messaggio errore" nella guida di DAO. È possibile impostare questa proprietà per un oggetto tabledef con CDaoTableDef::CreateField.
m_strDefaultValue
Il valore predefinito di un oggetto campo DAO. Quando viene creato un nuovo record, l'impostazione della proprietà DefaultValue viene immesso automaticamente come valore per il campo. Per informazioni dettagliate, vedere l'argomento "Proprietà DefaultValue" nella guida di DAO. È possibile impostare questa proprietà per un oggetto tabledef con CDaoTableDef::CreateField.
Commenti
Informazioni recuperate dalla funzione membro GetFieldInfo (della classe che contiene il campo) viene memorizzati in una struttura CDaoFieldInfo . Chiamare la funzione membro GetFieldInfo dell'oggetto contenitore in cui insieme Fields è memorizzato l'oggetto field. CDaoFieldInfo definisce anche una funzione membro Dump nelle build di debug. È possibile utilizzare Dump per eseguire il dump del contenuto di un oggetto CDaoFieldInfo.
Per informazioni sull'utilizzo di questa e altre strutture Info DAO MFC, vedere l'articolo insiemi DAO: recupero di informazioni sugli oggetti DAO nel manuale del programmatore di Visual C++.
Vedere a&nchenbsp;CDaoTableDef::GetFieldInfo, CDaoRecordset::GetFieldInfo, CDaoQueryDef::GetFieldInfo