Numéro d'article: 193947 - Dernière mise à jour: jeudi 1 juillet 2004 - Version: 4.3

Comment faire pour déterminer les propriétés du champ de Recordset à l'aide d'ADO

A noterCet article s'applique à un système d'exploitation différent de celui que vous utilisez. Le contenu de l'article qui ne vous concerne peut-être pas est désactivé.

Sommaire

Agrandir tout | Réduire tout

Résumé

Dans une application, il est parfois utile déterminer les propriétés des champs dans une source de données distante. Vous pouvez déterminer les informations telles que les noms de champs, les types de données et les longueurs de champ en examinant la collection Fields de l'objet Recordset ADO (ActiveX Data Objects).

Plus d'informations

Le programme suivant crée un objet Recordset à partir de la table authors de la base de données exemple pubs SQL Server. Il affiche le nom du champ, le type de données et la longueur définie de chaque champ dans la table authors.

Il renvoie le type de données sous la forme d'un nombre entier compris. Les instructions # define en haut de la programme sont incluses afin que cette valeur peut être inter-référencé pour une description de caractère du type de données.

Pour utiliser cet exemple, vous devez disposer de Microsoft Data Access Components (MDAC) version 2.x ou version ultérieure, qui est incluse dans les composants de données de Visual Studio 6.0 ou peut être téléchargé à partir de l'adresse suivante :
http://msdn.microsoft.com/en-us/data/aa937729.aspx (http://msdn.microsoft.com/en-us/data/aa937729.aspx)
Remarque : Remplacement des valeurs pour les serveur, les id d'utilisateur (UID) et les valeurs de mot de passe (PWD) correspondant à votre installation de SQL Server dans l'instruction oRecordset.OPEN.

Exemple de code

   * 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
				

Les informations contenues dans cet article s'appliquent au(x) produit(s) suivant(s):
  • Microsoft Visual FoxPro 6.0 Édition Professionnelle
  • Microsoft Data Access Components 2.1 Service Pack 2
  • Microsoft Data Access Components 2.5
  • Microsoft Data Access Components 2.6
Mots-clés : 
kbmt kbdatabase kbhowto KB193947 KbMtfr
Traduction automatiqueTraduction automatique
IMPORTANT : Cet article est issu du système de traduction automatique mis au point par Microsoft (http://support.microsoft.com/gp/mtdetails). Un certain nombre d?articles obtenus par traduction automatique sont en effet mis à votre disposition en complément des articles traduits en langue française par des traducteurs professionnels. Cela vous permet d?avoir accès, dans votre propre langue, à l?ensemble des articles de la base de connaissances rédigés originellement en langue anglaise. Les articles traduits automatiquement ne sont pas toujours parfaits et peuvent comporter des erreurs de vocabulaire, de syntaxe ou de grammaire (probablement semblables aux erreurs que ferait une personne étrangère s?exprimant dans votre langue !). Néanmoins, mis à part ces imperfections, ces articles devraient suffire à vous orienter et à vous aider à résoudre votre problème. Microsoft s?efforce aussi continuellement de faire évoluer son système de traduction automatique.
La version anglaise de cet article est la suivante: 193947  (http://support.microsoft.com/kb/193947/en-us/ )
L'INFORMATION CONTENUE DANS CE DOCUMENT EST FOURNIE PAR MICROSOFT SANS GARANTIE D'AUCUNE SORTE, EXPLICITE OU IMPLICITE. L'UTILISATEUR ASSUME LE RISQUE DE L'UTILISATION DU CONTENU DE CE DOCUMENT. CE DOCUMENT NE PEUT ETRE REVENDU OU CEDE EN ECHANGE D'UN QUELCONQUE PROFIT.