Compartilhar via


Estrutura CDaoFieldInfo

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

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
    Nomear exclusivamente o objeto do campo. Para obter detalhes, consulte o tópico “propriedade nome” na ajuda de DAO.

  • m_nType
    Um valor que indica o tipo de dados do campo. Para obter detalhes, consulte o tópico “propriedade tipo” na ajuda de DAO. O valor dessa propriedade pode ser um dos seguintes:

    • dbBoolean sim/não, mesmo que Verdadeiro/Falso

    • bytes dedbByte

    • dbInteger curto

    • dbLong long

    • moeda dedbCurrency; consulte a classe COleCurrencyMFC

    • dbSingle único

    • double dedbDouble

    • data/hora dedbDate; consulte a classe COleDateTimeMFC

    • texto dedbText; consulte a classe CStringMFC

    • binário o longo dedbLongBinary(objeto); OLE você pode usar a classe CByteArray MFC em vez da classe CLongBinary porque CByteArray é mais rico e mais fácil de usar.

    • memorando dedbMemo; consulte a classe CStringMFC

    • dbGUID um identificador exclusivo/universal um identificador exclusivo usado com chamadas de procedimento remoto. Para obter mais informações, consulte o tópico “propriedade tipo” na ajuda de DAO.

    Dica

    Não use tipos de dados de cadeia de caracteres para dados binários.Isso faz com que os dados a serem passados na camada de tradução Unicode/ANSI, resultando na sobrecarga gerada e possivelmente tradução inesperada.

  • m_lSize
    Um valor que indica o tamanho máximo, em bytes, de um objeto do campo de DAO que contém o texto ou o tamanho fixo de um objeto do campo que contém o texto ou valores numéricos. Para obter detalhes, consulte o tópico “propriedade tamanho” na ajuda de DAO. Os tamanhos pode ser um dos seguintes valores:

    Tipo

    Tamanho (bytes)

    Descrição

    dbBoolean

    1 byte

    Sim/não (mesmo que 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 (OLE objeto; CByteArray; use em vez de CLongBinary)

    dbMemo

    0

    Memorando (CString)

    dbGUID

    16

    Um identificador exclusivo/universal um identificador exclusivo usado com chamadas de procedimento remoto.

  • m_lAttributes
    Especifica características de um objeto do campo contido por um tabledef, por um conjunto de registros, por um querydef, ou por um objeto de índice. O valor retornado pode ser uma soma dessas constantes, criada com o C++ bit a bit OR ( **|**operador):

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

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

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

    • dbUpdatableField o valor de campo pode ser alterado.

    • dbDescending o campo é classificado (Z ou - A 100 - 0) na ordem de maneira decrescente (aplica-se somente a um objeto do campo em uma coleção de campos de um objeto do índice; MFC no, os próprios objetos do do índice são contidos em objetos de tabledef). Se você omitir esta constante, o campo é classificado (A - Z ou 0 - 100) na ordem de ordem crescente (padrão).

    Ao verificar a configuração dessa propriedade, você pode usar o C++ bit a bit AND (&) para testar um atributo específico. Ao definir vários atributos, você pode combiná-los combinando as constantes apropriados com bit a bit OR ( **|**operador). Para obter detalhes, consulte o tópico “propriedade dos atributos” na ajuda de DAO.

  • m_nOrdinalPosition
    Um valor que especifica a ordem numérica em que você deseja um campo representado por um objeto do campo de 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 de DAO.

  • m_bRequired
    Indica se um objeto do campo de DAO requer um valor não nulo. Se essa propriedade for Verdadeiro, o campo não permite um valor nulo. É definido se necessário, a Falsoo campo pode conter valores nulos bem como valores que atendem às condições especificadas pelas configurações de propriedade de AllowZeroLength e de ValidationRule. Para obter detalhes, consulte o tópico “necessário para a propriedade” na ajuda de DAO. Você pode definir esta propriedade para um tabledef com CDaoTableDef::CreateField.

  • m_bAllowZeroLength
    Indica se uma cadeia de caracteres vazia ("") é um valor válido de um objeto do campo de DAO com um tipo de dados de texto ou de memorando. Se essa propriedade for Verdadeiro, uma cadeia de caracteres vazia é um valor válido. Você pode definir esta propriedade como Falso para assegurar que você não pode usar uma cadeia de caracteres vazia para definir o valor de um campo. Para obter detalhes, consulte o tópico “propriedade AllowZeroLength” na ajuda de DAO. Você pode definir esta propriedade para um tabledef com CDaoTableDef::CreateField.

  • m_lCollatingOrder
    Especifica a sequência de ordem de classificação em texto para a comparação de cadeia de caracteres ou classificação. Para obter detalhes, consulte o tópico “personalizar configurações do Registro do Windows para acesso a dados” na ajuda de DAO. Para uma lista dos possíveis valores retornados, consulte o membro de m_lCollatingOrder da estrutura de CDaoDatabaseInfo . Você pode definir esta propriedade para um tabledef com CDaoTableDef::CreateField.

  • m_strForeignName
    Um valor que, em uma relação, especifica o nome do objeto do campo de DAO em uma tabela estrangeira que corresponde a um campo em uma tabela primária. Para obter detalhes, consulte o tópico “propriedade ForeignName” na ajuda de DAO.

  • m_strSourceField
    Indica o nome do campo que é a origem de dados original para um objeto do campo de DAO contido por um tabledef, por um conjunto de registros, ou por um objeto de querydef. Essa propriedade indica o nome do campo original associado a um objeto do campo. Por exemplo, você pode usar essa propriedade para determinar a fonte de dados original em um campo de consulta cujo nome é não relacionados com o nome do campo na tabela subjacente. Para obter detalhes, consulte o tópico “SourceField, propriedades de SourceTable” na ajuda de DAO. Você pode definir esta propriedade para um tabledef com CDaoTableDef::CreateField.

  • m_strSourceTable
    Indica o nome da tabela que é a origem de dados original para um objeto do campo de DAO contido por um tabledef, por um conjunto de registros, ou por um objeto de querydef. Essa propriedade indica o nome da tabela original associado a um objeto do campo. Por exemplo, você pode usar essa propriedade para determinar a fonte de dados original em um campo de consulta cujo nome é não relacionados com o nome do campo na tabela subjacente. Para obter detalhes, consulte o tópico “SourceField, propriedades de SourceTable” na ajuda de DAO. Você pode definir esta propriedade para um tabledef com CDaoTableDef::CreateField.

  • m_strValidationRule
    Um valor que valida os dados em um campo conforme for alterado ou adicionado a uma tabela. Para obter detalhes, consulte o tópico “propriedade ValidationRule” na ajuda de DAO. Você pode definir esta propriedade para um tabledef com CDaoTableDef::CreateField.

    Para obter informações sobre tabledefs relacionada, consulte o membro de m_strValidationRule da estrutura de CDaoTableDefInfo .

  • m_strValidationText
    Um valor que especifica o texto da mensagem que seu aplicativo exibe se o valor de um objeto do campo de DAO não obedece à regra de validação especificada pela configuração de propriedade de ValidationRule. Para obter detalhes, consulte o tópico “propriedade ValidationText” na ajuda de DAO. Você pode definir esta propriedade para um tabledef com CDaoTableDef::CreateField.

  • m_strDefaultValue
    O valor padrão de um objeto do campo de DAO. Quando um registro novo é criado, a configuração da propriedade DefaultValue digitada automaticamente à medida que o valor para o campo. Para obter detalhes, consulte o tópico “propriedade DefaultValue” na ajuda de DAO. Você pode definir esta propriedade para um tabledef com CDaoTableDef::CreateField.

Comentários

As referências à primário, secundário, e todas as anterior indicam como as informações são retornadas pela função de membro de GetFieldInfo nas classes CDaoTableDef, CDaoQueryDef, e CDaoRecordset.

Os objetos de campo não são representados por uma classe de MFC. Em vez disso, os objetos de DAO que são a base de objetos MFC das seguintes classes contêm as coleções de objetos do campo: CDaoTableDef, CDaoRecordset, e CDaoQueryDef. Essas funções de membro da fonte das classes para acessar alguns itens individuais de informações do campo, ou pode acessar de uma vez com um objeto de CDaoFieldInfo chamando a função de membro de GetFieldInfo do objeto contentor.

Além de seu uso para revisar as propriedades do objeto, você também pode usar CDaoFieldInfo para construir um parâmetro de entrada para criar novos campos em um tabledef. Mais opções simples estão disponíveis para esta tarefa, mas se você desejar um controle mais preciso, você pode usar a versão de CDaoTableDef::CreateField que assume um parâmetro de CDaoFieldInfo .

As informações recuperadas pela função de membro de GetFieldInfo (da classe que contém o campo) são armazenadas em uma estrutura de CDaoFieldInfo . Chame a função de membro de GetFieldInfo do objeto contentor em cuja coleção de campos o objeto do campo é armazenado. CDaoFieldInfo também define uma função de membro de Dump em construções de depuração. Você pode usar para Dump despejar os conteúdos de um objeto de CDaoFieldInfo .

Requisitos

Header: afxdao.h

Consulte também

Referência

CDaoTableDef::GetFieldInfo

CDaoRecordset::GetFieldInfo

CDaoQueryDef::GetFieldInfo

Outros recursos

Estruturas, estilos, retornos de chamada e mapas de mensagem