Estrutura CDaoFieldInfo
The 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 com exclusividade 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 uma das seguintes opções:dbBoolean Sim/Não, igual a TRUE/FALSE
dbByte Byte
dbInteger Curto
dbLong Longo
dbCurrency Moeda; consulte MFC classe COleCurrency
dbSingle Único
dbDouble Duplo
dbDate Data/time; consulte MFC classe COleDateTime
dbText Texto; Consulte MFC classe CString
dbLongBinary Binário longo (objeto OLE); você talvez queira usar MFC classe CByteArray em vez da classe CLongBinary sistema autônomo CByteArray é mais ricas e mais fácil de usar.
dbMemo Memorando; consulte MFC classe CString
dbGUID A global identificador exclusivo / universally identificador exclusivo usada com chamadas de procedimento remoto.Para obter mais informações, consulte o tópico "Propriedade de tipo" na Ajuda do DAO.
Observação: Não use tipos de dados de seqüência de caracteres para dados binário.Isso faz com que seus dados para atravessar a camada de conversão Unicode/ANSI, resultando em inc reased sobrecarga e possivelmente inesperada de tradução.
m_lSize
Um valor que indica o dimensionar máximo em bytes, de um objeto de campo do DAO que contém texto ou o dimensionar fixo de um objeto de campo que contém valores de texto ou numéricos.Para obter detalhes, consulte o tópico "Propriedade de dimensionar" na Ajuda do DAO.Tamanhos de podem ser um dos seguintes valores:Type (Tipo)
dimensionar (bytes)
Descrição
dbBoolean
1 byte
Sim/não (igual a verdadeiro/falso)
dbByte
1
Byte
dbInteger
2
Integer
dbLong
4
Long
dbCurrency
8
Unidade monetária (COleCurrency)
dbSingle
4
Single
dbDouble
8
Double
dbDate
8
Data/time (COleDateTime)
dbText
1 - 255
Texto (CString)
dbLongBinary
0
Binário longo (objeto OLE; CByteArray; usar em vez de CLongBinary)
dbMemo
0
Memorando (CString)
dbGUID
16
Um identificador global exclusivo Identifier/Universally Unique usada com chamadas de procedimento remoto.
m_lAttributes
Especifica as características de um objeto de campo contido em um definiçãodetabela, conjunto de registros, definiçãodeconsulta ou objeto de índice.O valor retornado pode ser uma soma de constantes, criado com o (OR bit a bit do C++|) operador:dbFixedField O dimensionar do campo é fixo (padrão para campos numéricos).
dbVariableField O dimensionar do campo é variável (somente campos de texto).
dbAutoIncrField O valor do campo para novos registros é incrementado automaticamente a um inteiro longo exclusivo que não pode ser alterado.Só tem suporte para tabelas do banco de dados Microsoft Jet.
dbUpdatableField O valor do campo pode ser alterado.
dbDescending O campo é classificado em decrescente (Z - A ou 0-100) ordem (aplica-se somente a um objeto de campo em uma coleção Fields de um objeto de índice; no MFC, índice próprios objetos estão contidos em objetos definiçãodetabela).Se você omitir esta constante, o campo é classificado em crescente (A - Z ou 0 - 100) ordem (padrão).
Ao verificar a configuração desta propriedade, você pode usar o C++ bit a bit- E operador (&) Para testar um atributo específico.Ao definir vários atributos, você pode combiná-las pela combinação de constantes apropriadas com o operador bit a bit ou (|) operador.Para obter detalhes, consulte o tópico "Propriedade de 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 conjunto 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 permite que um valor nulo.Se for necessária é definido sistema autônomo FALSE, o campo pode conter valores nulo, bem sistema autônomo sistema autônomo valores que atendam às condições especificadas pelas configurações de propriedade AllowZeroLength e regra de validação.Para obter detalhes, consulte o tópico "Propriedade required" na Ajuda do DAO.Você pode conjunto essa propriedade para uma definiçãodetabela com CDaoTableDef::CreateField.m_bAllowZeroLength
Indica se uma seqüência de caracteres vazia ("") é um valor válido de um objeto de campo do DAO com um tipo de dados texto ou Memorando.Se essa propriedade for TRUE, uma seqüência de caracteres vazia é um valor válido.Você pode conjunto essa propriedade para FALSE para garantir que não é possível usar uma seqüência de caracteres vazia para conjunto o valor de um campo.Para obter detalhes, consulte o tópico "Propriedade AllowZeroLength" na Ajuda do DAO.Você pode conjunto essa propriedade para uma definiçãodetabela com CDaoTableDef::CreateField.m_lCollatingOrder
Especifica a sequência da ordem de classificar em texto para comparação de seqüências de caracteres ou de classificar.Para obter detalhes, consulte o tópico "Customizing Windows Registro Settings para 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 conjunto essa propriedade para uma definiçãodetabela com CDaoTableDef::CreateField.m_strForeignName
Um valor que, em uma relação, especifica o nome do objeto DAO campo 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 do DAO.m_strSourceField
Indica o nome do campo que é a fonte original dos dados para um DAO campo objeto OLE contido por um objeto definiçãodetabela, conjunto de registros ou definiçãodeconsulta.Esta propriedade indica o nome de campo associado a um objeto do campo original.Por exemplo, você pode usar essa propriedade para determinar fonte dos dados em um campo de consulta cujo nome não está relacionado ao nome do campo na tabela de base original.Para obter detalhes, consulte o tópico "SourceTable propriedades SourceField" na Ajuda do DAO.Você pode conjunto essa propriedade para uma definiçãodetabela com CDaoTableDef::CreateField.m_strSourceTable
Indica o nome da tabela que é a fonte de dados para um campo objeto contido em um definiçãodetabela, conjunto de registros ou objeto definiçãodeconsulta original.Esta propriedade indica nome da tabela original associado a um objeto de campo.Por exemplo, você pode usar essa propriedade para determinar fonte dos dados em um campo de consulta cujo nome não está relacionado ao nome do campo na tabela de base original.Para obter detalhes, consulte o tópico "SourceTable propriedades SourceField" na Ajuda do DAO.Você pode conjunto essa propriedade para uma definiçãodetabela com CDaoTableDef::CreateField.m_strValidationRule
Um valor que valida sistema autônomo dados em um campo sistema autônomo ele é alterado ou adicionado a uma tabela.Para obter detalhes, consulte o tópico "Propriedade RegraDeValidação" na Ajuda do DAO.Você pode conjunto essa propriedade para uma definiçãodetabela 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 de que seu aplicativo exibe se o valor de um objeto de campo DAO não satisfaz a regra de validação especificada pela definição da propriedade ValidationRule.Para obter detalhes, consulte o tópico "Propriedade TextoDeValidação" na Ajuda do DAO.Você pode conjunto essa propriedade para uma definiçãodetabela 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 valor padrão é automaticamente inserida sistema autônomo o valor do campo.Para obter detalhes, consulte o tópico "Propriedade de valor padrão" na Ajuda do DAO.Você pode conjunto essa propriedade para uma definiçãodetabela com CDaoTableDef::CreateField.
Comentários
As referências a primária, secundária e All acima indicam como as informações fornecidas pelo GetFieldInfo função de membro em classes CDaoTableDef, CDaoQueryDef, and CDaoRecordset.
Objetos de campo não são representados por uma classe do MFC.Em vez disso, os objetos DAO MFC objetos das seguintes classes subjacentes contêm coleções de objetos de campo: CDaoTableDef, CDaoRecordset, and CDaoQueryDef.Essas classes fornecem funções de membro para acessar alguns itens específicos do informações do 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ê também pode usar CDaoFieldInfo para construir um parâmetro de entrada para a criação de novos campos em uma definiçãodetabela. Mais simples de opções estão disponível para essa tarefa, mas se você desejar exercer um melhor controle, você poderá usar a versão do CDaoTableDef::CreateField que leva um CDaoFieldInfo parâmetro.
Informações recuperadas pelo GetFieldInfo função de membro (da classe que contém o campo) é armazenada em um CDaoFieldInfo estrutura. telefonar the GetFieldInfo função de membro do objeto recipiente em cuja coleção Fields o objeto do campo está armazenado. CDaoFieldInfo também define um Dump cria a função de membro na depurar. Você pode usar Dump Despejar o Sumário de um CDaoFieldInfo objeto.
Requisitos
Cabeçalho: afxdao.h
Consulte também
Referência
Outros recursos
Estruturas, estilos, retornos de chamada e mapas de mensagem