Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Création d'une table avec ADOX

1 réponse
Avatar
news.skynet.be
Bonjour à Tous et bonne année.

Lorsque je crée, via VBA, une table dans les objets ADOX j'utilise les
méthodes et objects 'Colonnes'.
La commande est du style : A_Tab.Columns.Append I_Field, adVarWChar,
I_Lenght
La création de la table avec ces différents champs se passe bien.
Mais, et oui il y a un 'mais', comment puis-je faire pour modifier les
propriétés de ces champs ?
Par exemple je voudrais modifier la propriété "null interdit" qui est mise
par défaut à "oui".

Merci

Michel

1 réponse

Avatar
Benoit Compoint [MS]
Bonjour,

Les objets de la classe ADOX.Column possèdent (dans leur collection
Properties) la propriété "Nullable".
Malheureusement cette propriété est accessible uniquement en lecture.
Vous ne pouvez pas donc fixer cette propriété Nullable à True.

Vous pouvez cependant autoriser la valeur Null pour les champs que vous
créer via ADOX en utilisant la propriété Attributes d'un objet de la classe
ADOX.Column et la constante prédéfinie ADOX.adColNullable.
Vous pouvez ainsi fixer indirectement la propriété Nullable à True.

Exemple de procédure VBA :

Sub Test
Dim Cat As New ADOX.Catalog
Dim Col As New ADOX.Column
Cat.ActiveConnection = CurrentProject.Connection
Col.Name = I_Field
Col.Type = ADOX.adVarWChar
Col.DefinedSize = I_Lenght
Col.Attributes = ADOX.adColNullable
Cat.Tables("Table1").Columns.Append Col
MsgBox Cat.Tables("Table1").Columns( I_Field).Properties!nullable
End Sub

Benoît Compoint

"news.skynet.be" wrote in message
news:3ff54815$0$2446$
Bonjour à Tous et bonne année.

Lorsque je crée, via VBA, une table dans les objets ADOX j'utilise les
méthodes et objects 'Colonnes'.
La commande est du style : A_Tab.Columns.Append I_Field, adVarWChar,
I_Lenght
La création de la table avec ces différents champs se passe bien.
Mais, et oui il y a un 'mais', comment puis-je faire pour modifier les
propriétés de ces champs ?
Par exemple je voudrais modifier la propriété "null interdit" qui est mise
par défaut à "oui".

Merci

Michel