Artigo: 193947 - Última revisão: quinta-feira, 1 de Julho de 2004 - Revisão: 4.3

Como determinar a propriedades de campo de conjunto de registos utilizando ADO

Dica do SistemaEste artigo aplica-se a um sistema operativo diferente do que está a utilizar. Foi desactivado o conteúdo do artigo, que pode não ser relevante para si.

Nesta página

Expandir tudo | Reduzir tudo

Sumário

Numa aplicação, por vezes é útil determinar as propriedades de campos de uma origem de dados remota. Pode determinar informações tais como os nomes de campos, tipos de dados e comprimentos de campo examinando o conjunto de campos de objecto Recordset de ActiveX Data Objects (ADO).

Mais Informação

O programa seguinte cria um conjunto de registos da tabela autores da SQL Server dados de exemplo Pubs. -Apresenta o nome do campo, tipo de dados e comprimento definido de cada campo na tabela de autores.

Devolve o tipo de dados como um valor inteiro. As instruções #DEFINE na parte superior do programa são incluídas para que este valor pode ser cruzada-referenciado para uma descrição de caracteres do tipo de dados.

Para utilizar este exemplo, tem de ter o Microsoft Data Access Components (MDAC) versão 2.x ou posterior instalado, que está incluído nos componentes de dados do Visual Studio 6.0 ou pode ser transferido a partir do seguinte endereço Web:
http://msdn.microsoft.com/en-us/data/aa937729.aspx (http://msdn.microsoft.com/en-us/data/aa937729.aspx)
NOTA: Sub valores para o servidor, id de utilizador (UID) e valores de palavra-passe (PWD) adequados à sua instalação do SQL Server na instrução oRecordset.OPEN.

Código de exemplo

   * DEFINEs for field types - provided for reference only.
   #DEFINE ADEMPTY               0
   #DEFINE ADTINYINT            16
   #DEFINE ADSMALLINT            2
   #DEFINE ADINTEGER            3
   #DEFINE ADBIGINT            20
   #DEFINE ADUNSIGNEDTINYINT      17
   #DEFINE ADUNSIGNEDSMALLINT      18
   #DEFINE ADUNSIGNEDINT         19
   #DEFINE ADUNSIGNEDBIGINT      21
   #DEFINE ADSINGLE            4
   #DEFINE ADDOUBLE            5
   #DEFINE ADCURRENCY            6
   #DEFINE ADDECIMAL            14
   #DEFINE ADNUMERIC            131
   #DEFINE ADBOOLEAN            11
   #DEFINE ADERROR               10
   #DEFINE ADUSERDEFINED         132
   #DEFINE ADVARIANT            12
   #DEFINE ADIDISPATCH            9
   #DEFINE ADIUNKNOWN            13
   #DEFINE ADGUID               72
   #DEFINE ADDATE               7
   #DEFINE ADDBDATE            133
   #DEFINE ADDBTIME            134
   #DEFINE ADDBTIMESTAMP         135
   #DEFINE ADBSTR               8
   #DEFINE ADCHAR               129
   #DEFINE ADVARCHAR            200
   #DEFINE ADLONGVARCHAR         201
   #DEFINE ADWCHAR               130
   #DEFINE ADVARWCHAR            202
   #DEFINE ADLONGVARWCHAR         203
   #DEFINE ADBINARY            128
   #DEFINE ADVARBINARY            204
   #DEFINE ADLONGVARBINARY         205
   #DEFINE ADCHAPTER            136

   oRecordSet = CREATEOBJECT("ADODB.Recordset")

   lcSQL = "select * from authors"

   oRecordSet.OPEN(lcSQL, ;
      "DRIVER={SQL Server};" + ;
      "SERVER=YourServerName;" + ;
      "DATABASE=pubs;" + ;
      "UID=YourUserID;" + ;
      "PWD=YourPassword")

   lcFieldInfo = ""
   FOR EACH FIELD IN oRecordSet.FIELDS
      ? "Field name: ", FIELD.NAME, ;
         " Type: ", LTRIM(STR(FIELD.TYPE)), ;
         " Defined size: ", LTRIM(STR(FIELD.DEFINEDSIZE)), ;
         " Actual size: ", LTRIM(STR(FIELD.ACTUALSIZE))
      ?
   NEXT
				

A informação contida neste artigo aplica-se a:
  • Microsoft Visual FoxPro 6.0 Professional Edition
  • Microsoft Data Access Components 2.1 Service Pack 2
  • Microsoft Data Access Components 2.5
  • Microsoft Data Access Components 2.6
Palavras-chave: 
kbmt kbdatabase kbhowto KB193947 KbMtpt
Tradução automáticaTradução automática
IMPORTANTE: Este artigo foi traduzido por um sistema de tradução automática (também designado por Machine translation ou MT), não tendo sido portanto revisto ou traduzido por humanos. A Microsoft tem artigos traduzidos por aplicações (MT) e artigos traduzidos por tradutores profissionais. O objectivo é simples: oferecer em Português a totalidade dos artigos existentes na base de dados do suporte. Sabemos no entanto que a tradução automática não é sempre perfeita. Esta pode conter erros de vocabulário, sintaxe ou gramática? erros semelhantes aos que um estrangeiro realiza ao falar em Português. A Microsoft não é responsável por incoerências, erros ou estragos realizados na sequência da utilização dos artigos MT por parte dos nossos clientes. A Microsoft realiza actualizações frequentes ao software de tradução automática (MT). Obrigado.
Clique aqui para ver a versão em Inglês deste artigo: 193947  (http://support.microsoft.com/kb/193947/en-us/ )