Estrutura CDaoFieldInfo

O CDaoFieldInfo estrutura contém informações sobre um objeto de campo definido para objetos de acesso a dados (DAO).

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
    Nomes exclusivamente o objeto de campo.Para obter detalhes, consulte o tópico "Propriedade de nome" na Ajuda do DAO.

  • m_nType
    Um valor que indica o tipo de dados do campo.Para obter detalhes, consulte o tópico "Propriedade de tipo" na Ajuda do DAO.O valor dessa propriedade pode ser um destes procedimentos:

    • dbBoolean Sim/Não, mesmo que TRUE/FALSE

    • dbByte bytes

    • dbInteger curto

    • dbLong longo

    • dbCurrency moeda; consulte MFC classe COleCurrency

    • dbSingle único

    • dbDouble duplo

    • dbDate data/hora; consulte MFC classe COleDateTime

    • dbText texto; consulte MFC classe CString

    • dbLongBinary binário longo (objeto OLE); Convém usar classe MFC CByteArray em vez da classe CLongBinary como CByteArray é mais sofisticado e fácil de usar.

    • dbMemo Memorando; Consulte classe do MFCCString

    • dbGUID um identificador global exclusivo Identifier/Universally exclusiva usada com chamadas de procedimento remoto.Para obter mais informações, consulte o tópico "Propriedade de tipo" na Ajuda do DAO.

    ObservaçãoObservação

    Não use tipos de dados string para dados binários.Isso faz com que os dados passem a camada de conversão Unicode/ANSI, resultando em maior sobrecarga e possivelmente inesperada a conversão.

  • m_lSize
    Um valor que indica o tamanho máximo, em bytes, de um objeto de campo DAO que contém o texto ou o tamanho fixo de um objeto de campo que contém valores numéricos ou de texto.Para obter detalhes, consulte o tópico "Propriedade de tamanho" na Ajuda do DAO.Tamanhos podem ser um dos seguintes valores:

    Tipo

    Tamanho (Bytes)

    Descrição

    dbBoolean

    1 byte

    Sim/não (igual a True/False)

    dbByte

    1

    Byte

    dbInteger

    2

    Integer

    dbLong

    4

    Long

    dbCurrency

    8

    Moeda (COleCurrency)

    dbSingle

    4

    Single

    dbDouble

    8

    Double

    dbDate

    8

    Data/hora (COleDateTime)

    dbText

    1 - 255

    Texto (CString)

    dbLongBinary

    0

    Binário longo (objeto OLE; CByteArray; Use em vez de CLongBinary)

    dbMemo

    0

    Memorando (CString)

    dbGUID

    16

    Um identificador global exclusivo/universalmente identificador exclusivo usado com chamadas de procedimento remoto.

  • m_lAttributes
    Especifica as características de um objeto campo contido por uma tabledef, recordset, querydef ou objeto index.O valor retornado pode ser uma soma de constantes, criado com o (OR bit a bit do C++|) operador:

    • dbFixedField o tamanho do campo é fixo (padrão para campos numéricos).

    • dbVariableField o tamanho do campo é variável (somente campos texto).

    • dbAutoIncrField o valor do campo para novos registros é incrementado automaticamente para um inteiro longo exclusivo que não pode ser alterado.Suporte somente para tabelas de banco de dados Microsoft Jet.

    • dbUpdatableField o valor do campo pode ser alterado.

    • dbDescending o campo é classificado em decrescente (Z - A ou 0 a 100) ordem (se aplica somente a um objeto de campo em uma coleção Fields de um objeto de índice. no MFC, objetos de índice são contidas em objetos de tabledef).Se você omitir esta constante, o campo é classificado em crescente (A - Z ou 0 - 100) ordem (padrão).

    Ao verificar a configuração dessa propriedade, você pode usar o C++ bit a bit- E operador (&) para testar um atributo específico.Ao definir vários atributos, combiná-los, combinando as constantes apropriadas com o bit a bit ou (|) operador.Para obter detalhes, consulte o tópico "Propriedade atributos" na Ajuda do DAO.

  • m_nOrdinalPosition
    Um valor que especifica a ordem numérica na qual você deseja um campo representado por um objeto de campo DAO a ser exibido em relação a outros campos.Você pode definir essa propriedade com CDaoTableDef::CreateField.Para obter detalhes, consulte o tópico "Propriedade OrdinalPosition" na Ajuda do DAO.

  • m_bRequired
    Indica se um objeto de campo DAO requer um valor não nulo.Se essa propriedade for TRUE, o campo não aceita um valor nulo.Se necessário é definido como FALSE, o campo pode conter valores nulos, bem como os valores que atendam às condições especificadas pelas configurações de propriedade AllowZeroLength e ValidationRule.Para obter detalhes, consulte o tópico "Propriedade necessária" na Ajuda do DAO.Você pode definir essa propriedade para uma tabledef com CDaoTableDef::CreateField.

  • m_bAllowZeroLength
    Indica se uma seqüência vazia ("") é um valor válido de um objeto de campo DAO com um tipo de dados texto ou Memorando.Se essa propriedade for TRUE, uma seqüência vazia é um valor válido.Você pode definir essa propriedade como FALSE para garantir que você não pode usar uma seqüência vazia para definir o valor de um campo.Para obter detalhes, consulte o tópico "Propriedade AllowZeroLength" na Ajuda do DAO.Você pode definir essa propriedade para uma tabledef com CDaoTableDef::CreateField.

  • m_lCollatingOrder
    Especifica a seqüência da ordem de classificação no texto para comparação de seqüência de caracteres ou classificação.Para obter detalhes, consulte o tópico "Personalizando o Windows do registro configurações de acesso a dados" na Ajuda do DAO.Para obter uma lista dos possíveis valores retornados, consulte o m_lCollatingOrder membro do CDaoDatabaseInfo estrutura.Você pode definir essa propriedade para uma tabledef com CDaoTableDef::CreateField.

  • m_strForeignName
    Um valor que, em uma relação Especifica o nome do objeto DAO campo em uma tabela externa que corresponde a um campo em uma tabela primária.Para obter detalhes, consulte o tópico "Propriedade ForeignName" na Ajuda do DAO.

  • m_strSourceField
    Indica o nome do campo é a fonte original dos dados de um objeto de campo DAO contido por um tabledef, recordset ou um objeto querydef.Esta propriedade indica o nome do campo original associado a um objeto de campo.Por exemplo, você pode usar essa propriedade para determinar a origem de dados em um campo de consulta cujo nome é relacionado ao nome do campo na tabela base.Para obter detalhes, consulte o tópico "SourceField, SourceTable propriedades" na Ajuda do DAO.Você pode definir essa propriedade para uma tabledef com CDaoTableDef::CreateField.

  • m_strSourceTable
    Indica o nome da tabela que é a fonte original dos dados de um objeto de campo DAO contido por um tabledef, recordset ou um objeto querydef.Esta propriedade indica o nome da tabela original associado a um objeto de campo.Por exemplo, você pode usar essa propriedade para determinar a origem de dados em um campo de consulta cujo nome é relacionado ao nome do campo na tabela base.Para obter detalhes, consulte o tópico "SourceField, SourceTable propriedades" na Ajuda do DAO.Você pode definir essa propriedade para uma tabledef com CDaoTableDef::CreateField.

  • m_strValidationRule
    Um valor que valida os dados em um campo como ele é alterado ou adicionado a uma tabela.Para obter detalhes, consulte o tópico "Propriedade RegraDeValidação" na Ajuda do DAO.Você pode definir essa propriedade para uma tabledef com CDaoTableDef::CreateField.

    Para obter informações relacionadas sobre tabledefs, consulte o m_strValidationRule membro do CDaoTableDefInfo estrutura.

  • m_strValidationText
    Um valor que especifica o texto da mensagem que seu aplicativo exibe se o valor de um objeto de campo DAO não satisfaz a regra de validação especificada pela configuração da propriedade ValidationRule.Para obter detalhes, consulte o tópico "Propriedade TextoDeValidação" na Ajuda do DAO.Você pode definir essa propriedade para uma tabledef com CDaoTableDef::CreateField.

  • m_strDefaultValue
    O valor padrão de um objeto de campo do DAO.Quando um novo registro é criado, a configuração da propriedade DefaultValue é inserida automaticamente como o valor do campo.Para obter detalhes, consulte o tópico "Propriedade ValorPadrão" na Ajuda do DAO.Você pode definir essa propriedade para uma tabledef com CDaoTableDef::CreateField.

Comentários

Referências primária, secundária e tudo acima indicam como as informações são retornadas pelo GetFieldInfo função de membro nas classes CDaoTableDef, CDaoQueryDef, e CDaoRecordset.

Objetos de campo não são representados por uma classe do MFC.Em vez disso, os objetos DAO subjacentes objetos MFC das classes a seguir contêm coleções de objetos de campo: CDaoTableDef, CDaoRecordset, e CDaoQueryDef.Essas classes fornecem funções de membro para acessar alguns itens individuais de informações de campo, ou você pode acessá-los todos de uma vez com um CDaoFieldInfo objeto chamando o GetFieldInfo função de membro do objeto recipiente.

Além de seu uso para examinar as propriedades do objeto, você pode usar também CDaoFieldInfo para construir um parâmetro de entrada para a criação de novos campos em uma tabledef.Opções mais simples estão disponíveis para essa tarefa, mas se você desejar exercer um melhor controle, você pode usar a versão do CDaoTableDef::CreateField que leva um CDaoFieldInfo parâmetro.

As informações recuperadas pelo GetFieldInfo função de membro (da classe que contém o campo) é armazenada em um CDaoFieldInfo estrutura.Chamar o GetFieldInfo função de membro do objeto recipiente no cuja coleção de campos objeto field está armazenado.CDaoFieldInfotambém define um Dump membro na depuração compilações.Você pode usar Dump para despejar o conteúdo de um CDaoFieldInfo objeto.

Requisitos

Cabeçalho: afxdao.h

Consulte também

Referência

CDaoTableDef::GetFieldInfo

CDaoRecordset::GetFieldInfo

CDaoQueryDef::GetFieldInfo

Outros recursos

Estruturas, estilos, retornos de chamada e mapas de mensagem