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

Problème simplet et bête mais pas de solution ?

2 réponses
Avatar
Bull
Bonjour,

Mon application est connectée à une base de données Access. Une des tables
comporte un champ "password".

Problème, via VB.net, il est impossible de supprimer ce champ (avec une
requête SQL : alter table nom_table drop column password). Pourtant, la même
requête que je crée sous Access est acceptée et le champ et supprimé.

Du coup, j'ai pensé à récupéré la table dans un dataset, supprimer la
colonne dans le datatable et mettre à jour la base access.

Problème : je ne sais pas comment faire en sorte de mettre à jour Access par
rapport à un champ supprimé dans un dataTable.
Voici comment j'ai fait :

im dataset As New DataSet

Dim connection As System.Data.OleDb.OleDbConnection = New
System.Data.OleDb.OleDbConnection

connection.ConnectionString = connectionString

Dim sql As String = "SELECT * FROM table"

Dim dataAdapter As New System.Data.OleDb.OleDbDataAdapter(sql, connection)

dataAdapter.Fill(dataset, "table")

dataset.Tables("table").Columns.Remove("password")

'on met à jour la base

Dim cmdBuilder As New System.Data.OleDb.OleDbCommandBuilder(dataAdapter)

dataAdapter.UpdateCommand = cmdBuilder.GetUpdateCommand

dataAdapter.Update(dataset, "table")


Comment faut-il procéder ?

Merci d'avance,

--
Cordialement,
Bull

2 réponses

Avatar
Zoury
Salut Bull ! :O)

Problème, via VB.net, il est impossible de supprimer ce champ (avec une
requête SQL : alter table nom_table drop column password). Pourtant, la
même requête que je crée sous Access est acceptée et le champ et supprimé.



Comment as-tu procédé ? Il me *semble* que ça fonctionne mais je ne peux pas
retester pour l'instant... :OP

--
Cordialement
Yanick
MVP pour Visual Basic
Avatar
Bull
Salut Zoury,

En fait la requête fonctionne bien si je la crée directement sous Access
mais pas sous VB.net.

Je viens de recevoir par email une réponse de Serge Fournier qui fonctionne.
Il faut en fait écrire la requête SQL comme suit :

"alter table nom_table drop column [password]"

Encore un grand merci à toi Serge :)

--
Cordialement,
Bull


"Zoury" a écrit dans le message de news:

Salut Bull ! :O)

Problème, via VB.net, il est impossible de supprimer ce champ (avec une
requête SQL : alter table nom_table drop column password). Pourtant, la
même requête que je crée sous Access est acceptée et le champ et
supprimé.



Comment as-tu procédé ? Il me *semble* que ça fonctionne mais je ne peux
pas retester pour l'instant... :OP

--
Cordialement
Yanick
MVP pour Visual Basic