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

Ajouter un champ dans une table

3 réponses
Avatar
Tocnet
Salut à tous et toutes,

Je cherche à ajouter un champs dans une table access qui existe déjà.
Pour cela j'utilise les références suivantes:
Microsoft ActiveX Data Objects 2.7 Library
Microsoft ADO Ext. 2.7 for DDL and Security

Je plante au niveau de l'activeconnection avec le message suivant:
Les arguments sont de type incorrect, en dehors des limites autorisées ou en
conflit les uns avec les autres.

Est-ce que voua avez une idée ?
Mon code est en dessous.

Merci par avanace,
Sébastien
--------------------------------------------------------

Dim cat As ADOX.Catalog
cat = New ADOX.Catalog

dbPath = "C:\northwind.mdb"
If File.Exists(dbPath) Then
cat.ActiveConnection = "Provider=Microsoft.Jet.OLEDB.4.0;" & _
"Data Source=" & dbPath & ";"
cat.Tables("Customers").Columns.Append("Champ3",
ADOX.DataTypeEnum.adInteger)
End If

3 réponses

Avatar
J-M Rabilloud [MVP]
Tu ne peux pas éviter la création d'une connexion ADO explicite

If IO.File.Exists(dbPath) Then
Dim MaConn As New ADODB.Connection
MaConn.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data
Source=" & dbPath
MaConn.Open()
cat.ActiveConnection = MaConn
cat.Tables("Authors").Columns.Append("Champ3",
DataTypeEnum.adInteger)
End If


"Tocnet" a écrit :

Salut à tous et toutes,

Je cherche à ajouter un champs dans une table access qui existe déjà.
Pour cela j'utilise les références suivantes:
Microsoft ActiveX Data Objects 2.7 Library
Microsoft ADO Ext. 2.7 for DDL and Security

Je plante au niveau de l'activeconnection avec le message suivant:
Les arguments sont de type incorrect, en dehors des limites autorisées ou en
conflit les uns avec les autres.

Est-ce que voua avez une idée ?
Mon code est en dessous.

Merci par avanace,
Sébastien
--------------------------------------------------------

Dim cat As ADOX.Catalog
cat = New ADOX.Catalog

dbPath = "C:northwind.mdb"
If File.Exists(dbPath) Then
cat.ActiveConnection = "Provider=Microsoft.Jet.OLEDB.4.0;" & _
"Data Source=" & dbPath & ";"
cat.Tables("Customers").Columns.Append("Champ3",
ADOX.DataTypeEnum.adInteger)
End If





Avatar
Seb
Merci pour ton aide, je vais essayer cela.
Je suis étonné de ta réponse car j'utilise déja les ADOX
pour créer ma table. Donc je me suis dit que se serait
aussi possible pour la modification d'une table.

Merci pour ton aide,
Sébastien

-----Message d'origine-----
Tu ne peux pas éviter la création d'une connexion ADO


explicite

If IO.File.Exists(dbPath) Then
Dim MaConn As New ADODB.Connection
MaConn.ConnectionString


= "Provider=Microsoft.Jet.OLEDB.4.0;Data
Source=" & dbPath
MaConn.Open()
cat.ActiveConnection = MaConn
cat.Tables("Authors").Columns.Append


("Champ3",
DataTypeEnum.adInteger)
End If


"Tocnet" a écrit :

Salut à tous et toutes,

Je cherche à ajouter un champs dans une table access




qui existe déjà .
Pour cela j'utilise les références suivantes:
Microsoft ActiveX Data Objects 2.7 Library
Microsoft ADO Ext. 2.7 for DDL and Security

Je plante au niveau de l'activeconnection avec le




message suivant:
Les arguments sont de type incorrect, en dehors des




limites autorisées ou en
conflit les uns avec les autres.

Est-ce que voua avez une idée ?
Mon code est en dessous.

Merci par avanace,
Sébastien
-------------------------------------------------------




-

Dim cat As ADOX.Catalog
cat = New ADOX.Catalog

dbPath = "C:northwind.mdb"
If File.Exists(dbPath) Then
cat.ActiveConnection




= "Provider=Microsoft.Jet.OLEDB.4.0;" & _
"Data




Source=" & dbPath & ";"
cat.Tables("Customers").Columns.Append("Champ3",
ADOX.DataTypeEnum.adInteger)
End If





.



Avatar
Seb
J'ai répondu un peu vite, je n'avais pas vu l'utilisation
des catalogues dans ton exemple et donc des ADOX, désolé.

Encore merci
Sébastien

-----Message d'origine-----
Tu ne peux pas éviter la création d'une connexion ADO


explicite

If IO.File.Exists(dbPath) Then
Dim MaConn As New ADODB.Connection
MaConn.ConnectionString


= "Provider=Microsoft.Jet.OLEDB.4.0;Data
Source=" & dbPath
MaConn.Open()
cat.ActiveConnection = MaConn
cat.Tables("Authors").Columns.Append


("Champ3",
DataTypeEnum.adInteger)
End If


"Tocnet" a écrit :

Salut à tous et toutes,

Je cherche à ajouter un champs dans une table access




qui existe déjà .
Pour cela j'utilise les références suivantes:
Microsoft ActiveX Data Objects 2.7 Library
Microsoft ADO Ext. 2.7 for DDL and Security

Je plante au niveau de l'activeconnection avec le




message suivant:
Les arguments sont de type incorrect, en dehors des




limites autorisées ou en
conflit les uns avec les autres.

Est-ce que voua avez une idée ?
Mon code est en dessous.

Merci par avanace,
Sébastien
-------------------------------------------------------




-

Dim cat As ADOX.Catalog
cat = New ADOX.Catalog

dbPath = "C:northwind.mdb"
If File.Exists(dbPath) Then
cat.ActiveConnection




= "Provider=Microsoft.Jet.OLEDB.4.0;" & _
"Data




Source=" & dbPath & ";"
cat.Tables("Customers").Columns.Append("Champ3",
ADOX.DataTypeEnum.adInteger)
End If





.