URGENT :Comment retrouver une valeur dans une enumeration ?

JeanFrancis68 Messages postés 32 Date d'inscription vendredi 3 mai 2002 Statut Membre Dernière intervention 3 juin 2003 - 29 août 2002 à 15:06
zefri Messages postés 33 Date d'inscription samedi 1 juin 2002 Statut Membre Dernière intervention 11 décembre 2002 - 31 août 2002 à 03:51
Bonjour,

Je vous sollicite encore une fois pour un gros problème..qui je l'espère n'en ai pas un !!!

Problème : Je recherche pour chaque colonne d'une table si celle ci accepte ou non les valeurs nulles.
Le modèle d'accès aux données utilisé est ADO.
L'information que je recherche est contenue dans la propriété Attributes de l'objet Field.
La propriété Attributes est l'addition de 0 ou plusieurs constantes dont voici la liste :

adFldMayBeNull = 64
adFldUpdatable = 4
adFldUnknownUpdatable = 8
adFldMayDefer = 2
adFldFixed = 16
adFldIsNullable = 32
adFldLong = 128
adFldRowID = 256
adFldRowVersion = 512
adFldCacheDeferred = 4096

Il me faut retrouver si dans cette addition se trouve la valeur 32.

Pour atteindre cet objet pour chaque colonne, j'effectue les taches suivantes :

        rs.ActiveConnection = cxConnexion
        rs.CursorType = adOpenStatic
        rs.Open "SELECT * FROM MATABLE"
        For j = 0 To rs.Fields.Count - 1
           msgbox rs.Fields(j).attributes 
 ' C dans cette propriété que se trouve la valeur 32  si mon champs accepte les valeurs nulles !
' mais comment le trouver ????
        Next j
        rs.Close


Comment faire pour trouver si mon champs a bien l'attribut adFidIsNullable ????

Merci d'avance.

3 réponses

cs_imer Messages postés 59 Date d'inscription vendredi 26 juillet 2002 Statut Membre Dernière intervention 29 janvier 2004
29 août 2002 à 15:41
Il me semble que les sommes de ces valeurs qui contiennent 32 soient finies mais pour les connaitre toutes, je ne sais pas comment faire. Par contre tu peux accéder à cette propriété par un objet Property, soit : rs.Fields(j).Properties("Required") . Renvoie vrai ou faux.
0
TheSaib Messages postés 2367 Date d'inscription mardi 17 avril 2001 Statut Membre Dernière intervention 26 décembre 2007 23
29 août 2002 à 16:17
je comprends pas le probleme ...

essaye çà je ne promets rien :

for each attrib in rs.Fields(j).attributes
if attrib=adFldIsNullable then
blnTrouve=true
exit for
end if
next

|The S@ib|
VBP2P project
0
zefri Messages postés 33 Date d'inscription samedi 1 juin 2002 Statut Membre Dernière intervention 11 décembre 2002
31 août 2002 à 03:51
Tu as essayé avec

MsgBox rs.Fields(j).attributes("adFldIsNullable") ?
0
Rejoignez-nous