Nota
O acesso a esta página requer autorização. Pode tentar iniciar sessão ou alterar os diretórios.
O acesso a esta página requer autorização. Pode tentar alterar os diretórios.
Observação
A biblioteca Microsoft Foundation Classes (MFC) continua a ser suportada. No entanto, já não estamos a adicionar funcionalidades nem a atualizar a documentação.
A CDaoFieldInfo estrutura contém informação sobre um objeto de campo definido para objetos de acesso a dados (DAO).
Observação
DAO é suportado através do Office 2013. O DAO 3.6 é a versão final, e é considerado obsoleto.
Sintaxe
struct CDaoFieldInfo
{
CString m_strName; // Primary
short m_nType; // Primary
long m_lSize; // Primary
long m_lAttributes; // Primary
short m_nOrdinalPosition; // Secondary
BOOL m_bRequired; // Secondary
BOOL m_bAllowZeroLength; // Secondary
long m_lCollatingOrder; // Secondary
CString m_strForeignName; // Secondary
CString m_strSourceField; // Secondary
CString m_strSourceTable; // Secondary
CString m_strValidationRule; // All
CString m_strValidationText; // All
CString m_strDefaultValue; // All
};
Parâmetros
m_strName
Nomeia de forma única o objeto de campo. Para mais detalhes, consulte o tópico "Nome de Propriedade" na Ajuda do DAO.
m_nType
Um valor que indica o tipo de dado do campo. Para mais detalhes, consulte o tópico "Propriedade de Tipo" no DAO Help. O valor desta propriedade pode ser um dos seguintes:
dbBooleanSim/Não, igual a VERDADEIRO/FALSOdbByteBytedbIntegerCurtodbLongLongodbCurrencyMoeda; ver classe MFC COleCurrencydbSingleSingledbDoubleDuplodbDateData/Hora; ver classe MFC COleDateTimedbTextTexto; ver classe MFC CStringdbLongBinaryBinário Longo (Objeto OLE); Podes querer usar a classe MFC CByteArray em vez da classe,CLongBinarypoisCByteArrayé mais rica e fácil de usar.dbMemoMemorando; ver classe MFCCStringdbGUIDUm Identificador Globalmente Único/Identificador Universalmente Único usado com chamadas de procedimentos remotos. Para mais informações, consulte o tópico "Propriedade de Tipo" no DAO Help.
Observação
Não use tipos de dados string para dados binários. Isto faz com que os seus dados passem pela camada de tradução Unicode/ANSI, resultando em maior sobrecarga e possivelmente traduções inesperadas.
m_lSize
Um valor que indica o tamanho máximo, em bytes, de um objeto de campo DAO que contém texto ou o tamanho fixo de um objeto de campo que contém texto ou valores numéricos. Para mais detalhes, consulte o tópico "Tamanho da Propriedade" no DAO Help. Os tamanhos podem ser um dos seguintes valores:
| Tipo | Tamanho (bytes) | Description |
|---|---|---|
dbBoolean |
1 byte | Sim/Não (igual a Verdadeiro/Falso) |
dbByte |
1 | Byte |
dbInteger |
2 | Número inteiro |
dbLong |
4 | Longo |
dbCurrency |
8 | Moeda (COleCurrency) |
dbSingle |
4 | Solteiro |
dbDouble |
8 | Double |
dbDate |
8 | Data/Hora (COleDateTime) |
dbText |
1 - 255 | Texto (CString) |
dbLongBinary |
0 | Binário longo (OLE Object; CByteArray; usar em vez de CLongBinary) |
dbMemo |
0 | Memorando (CString) |
dbGUID |
16 | Um Identificador Globalmente Único/Identificador Universalmente Único usado com chamadas de procedimentos remotos. |
m_lAttributes
Especifica as características de um objeto de campo contido por um tabledef, recordet, querydef ou objeto index. O valor devolvido pode ser a soma destas constantes, criada com o operador bit a bit OR (|) em C++:
dbFixedFieldO tamanho do campo é fixo (padrão para campos Numéricos).dbVariableFieldO tamanho do campo é variável (apenas campos de texto).dbAutoIncrFieldO valor do campo para novos registos é automaticamente incrementado para um único inteiro longo que não pode ser alterado. Só é suportado para tabelas de bases de dados Microsoft Jet.dbUpdatableFieldO valor do campo pode ser alterado.dbDescendingO campo está ordenado em ordem decrescente (Z - A ou 100 - 0) (aplica-se apenas a um objeto campo numa coleção Fields de um objeto index; no MFC, os objetos índice estão eles próprios contidos em objetos tabledef). Se omitir esta constante, o campo está ordenado em ordem crescente (A - Z ou 0 - 100) (padrão).
Ao verificar a definição desta propriedade, pode usar o operador bit a bit AND de C++ (&) para testar um atributo específico. Ao definir múltiplos atributos, pode combiná-los combinando as constantes apropriadas com o operador bit a bit OR (|). Para mais detalhes, consulte o tópico "Propriedade de Atributos" na Ajuda DAO.
m_nOrdinalPosition
Um valor que especifica a ordem numérica em que se quer que um campo representado por um objeto de campo DAO seja apresentado em relação a outros campos. Pode definir esta propriedade com CDaoTableDef::CreateField. Para mais detalhes, consulte o tópico "Propriedade OrdinalPosition" na Ajuda DAO.
m_bRequired
Indica se um objeto de campo DAO requer um valor não-Nulo. Se esta propriedade for VERDADEIRA, o campo não permite um valor Nulo. Se Required estiver definido como FALSE, o campo pode conter valores Nulos, bem como valores que cumpram as condições especificadas pelas definições AllowZeroLength e ValidationRule. Para mais detalhes, consulte o tópico "Propriedade Necessária" no DAO Help. Podes definir esta propriedade para um tabledef com CDaoTableDef::CreateField.
m_bAllowZeroLength
Indica se uma string vazia ("") é um valor válido de um objeto de campo DAO com um tipo de dado Texto ou Memo. Se esta propriedade for VERDADEIRA, uma cadeia vazia é um valor válido. Pode definir esta propriedade para FALSE para garantir que não pode usar uma string vazia para definir o valor de um campo. Para mais detalhes, consulte o tópico "AllowZeroLength Property" em Ajuda DAO. Podes definir esta propriedade para um tabledef com CDaoTableDef::CreateField.
m_lCollatingOrder
Especifica a sequência da ordem de ordenação no texto para comparação ou ordenação de cadeias. Para mais detalhes, consulte o tópico "Personalização das Definições do Registo do Windows para Acesso a Dados" na Ajuda do DAO. Para uma lista dos valores possíveis devolvidos, veja o m_lCollatingOrder membro da estrutura CDaoDatabaseInfo . Podes definir esta propriedade para um tabledef com CDaoTableDef::CreateField.
m_strForeignName
Um valor que, numa relação, especifica o nome do objeto de campo DAO numa tabela estrangeira que corresponde a um campo numa tabela primária. Para mais detalhes, consulte o tópico "Foreignname Property" no DAO Help.
m_strSourceField
Indica o nome do campo que é a fonte original dos dados para um objeto de campo DAO contido por um objeto tabledef, recordet ou querydef. Esta propriedade indica o nome original do campo associado a um objeto de campo. Por exemplo, pode usar esta propriedade para determinar a origem original dos dados num campo de consulta cujo nome não está relacionado com o nome do campo na tabela subjacente. Para mais detalhes, consulte o tópico "SourceField, SourceTable Properties" na Ajuda do DAO. Podes definir esta propriedade para um tabledef com CDaoTableDef::CreateField.
m_strSourceTable
Indica o nome da tabela que é a fonte original dos dados para um objeto de campo DAO contido por um objeto tabledef, recordet ou querydef. Esta propriedade indica o nome original da tabela associado a um objeto de campo. Por exemplo, pode usar esta propriedade para determinar a origem original dos dados num campo de consulta cujo nome não está relacionado com o nome do campo na tabela subjacente. Para mais detalhes, consulte o tópico "SourceField, SourceTable Properties" na Ajuda do DAO. Podes definir esta propriedade para um tabledef com CDaoTableDef::CreateField.
m_strValidationRule
Um valor que valida os dados num campo à medida que são alterados ou adicionados a uma tabela. Para detalhes, consulte o tópico "ValidationRule Property" na Ajuda DAO. Podes definir esta propriedade para um tabledef com CDaoTableDef::CreateField.
Para informações relacionadas sobre tabledefs, consulte o m_strValidationRule membro da estrutura CDaoTableDefInfo .
m_strValidationText
Um valor que especifica o texto da mensagem que a sua aplicação apresenta se o valor de um objeto de campo DAO não satisfaz a regra de validação especificada pela definição de propriedade ValidationRule. Para mais detalhes, consulte o tópico "ValidationText Property" na Ajuda DAO. Podes definir esta propriedade para um tabledef com CDaoTableDef::CreateField.
m_strDefaultValue
O valor padrão de um objeto de campo DAO. Quando um novo registo é criado, a definição da propriedade DefaultValue é automaticamente introduzida como o valor do campo. Para mais detalhes, consulte o tópico "Propriedade DefaultValue" na Ajuda DAO. Podes definir esta propriedade para um tabledef com CDaoTableDef::CreateField.
Observações
As referências a Primário, Secundário e Todos acima indicam como a informação é devolvida pela GetFieldInfo função membro nas classes CDaoTableDef, CDaoQueryDef e CDaoRecordset.
Os objetos de campo não são representados por uma classe MFC. Em vez disso, os objetos DAO subjacentes aos objetos MFC das seguintes classes contêm coleções de objetos de campo: CDaoTableDef, CDaoRecordset e CDaoQueryDef. Estas classes fornecem funções membros para aceder a alguns itens individuais de informação de campo, ou pode aceder a todas de uma vez com um CDaoFieldInfo objeto chamando a GetFieldInfo função membro do objeto que o contém.
Além da sua utilização para examinar propriedades de objetos, também pode usar CDaoFieldInfo para construir um parâmetro de entrada para criar novos campos numa definição de tabela. Existem opções mais simples para esta tarefa, mas se quiser um controlo mais fino, pode usar a versão do CDaoTableDef::CreateField que recebe um CDaoFieldInfo parâmetro.
A informação recuperada pela GetFieldInfo função membro (da classe que contém o corpo) é armazenada numa CDaoFieldInfo estrutura. Chama a GetFieldInfo função membro do objeto que contém cuja coleção de Campos o objeto campo está armazenado.
CDaoFieldInfo também define uma Dump função membro em builds de depuração. Podes usar Dump para despejar o conteúdo de um CDaoFieldInfo objeto.
Requerimentos
Cabeçalho:afxdao.h
Consulte também
Estruturas, estilos, retornos de chamada e mapas de mensagens
CDaoTableDef::GetFieldInfo
CDaoRecordset::GetFieldInfo
CDaoQueryDef::GetFieldInfo