bonjour,
tout dépend, mais pour ajouter un champ dans une table, il faut passer par le catalogue :
dim Cat as new adox.catalog dim Tbl as new adox.table dim Col as new adox.column
' chaîne de connexion à ta base cat.activeconnection = ..........
with Col .Name = "nom_de_ton_champ_à_ajouter" .Type = adInteger ' type de données texte par ex. Set .parentcatalog = Cat .Properties("autoincrement") = True End with
' Properties ne fonctionne pas si on n'a pas auparavant associé le parentcatalog au catalogue en cours
Cat.Tables("nom_de_la_table").Columns.Append Col
set Cat = nothing
Avec ça, tu devrais t'en tirer. Tu vois qu'on ne passe pas par Fields. Fields est plus une notion de cellule, donc de champ DANS un enregistrement, Column est une notion de colonne, donc de champ pour une table complète.
J'espère t'avoir aidé.
Bon courage
oiseau
------------------------------- Réponse au message : -------------------------------
Bonjour, j'utilise la méthode ADO et je voudrais rajouter un champs à une base de données dynamiquement, j'utilise alors rsADO.Fields.Append mais une erreur se produit : INTERDIT DANS LE CONTEXTE Faut-il que je modifie ma façon d'ouvrir la base ?
|