programmation vb.net en ado.net
Bonjour, je me suis mis à vb.net il y a peu de temps et je réalise une insertion dans une base Access en Ado.net mais comme je pense (enfin j'espère il y a 2 façon).
J'ai réalisé les 2 façon est celle-ci marche mais le concept reste très flou, si quelqu'un pourrais m'expliqué plus clairement merci d'avance.
1ère façon :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21
|
'Enregistrement de l'utilisateur dans la base
Public Sub Ajouter(ByVal NewUser As USER)
'Try
Dim cnx As OleDb.OleDbConnection = Nothing
Dim cmd As OleDb.OleDbCommand
cnx = Open_connexion()
cmd = New OleDb.OleDbCommand
cmd.CommandType = CommandType.Text
Dim sql As String = "INSERT INTO UTILISATEUR (identifiant, mdp, question, reponse) VALUES (@login, @password, @question, @reponse)"
cmd.CommandText = sql
cmd.Parameters.AddWithValue("@login", NewUser.Login)
cmd.Parameters.AddWithValue("@password", NewUser.Password)
cmd.Parameters.AddWithValue("@question", NewUser.Question)
cmd.Parameters.AddWithValue("@reponse", NewUser.Reponse)
cmd.Connection = cnx
cmd.ExecuteNonQuery()
'Catch ex As Exception
'Throw New Exception("Erreur ajout utilisateur" & Environment.NewLine & ex.Message)
'End Try
End Sub |
la 2ième façon (mode déconnecté, c'est flou pour moi)
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30
|
Private AdaptUtilisateur As OleDbDataAdapter
Private DtSet As New DataSet()
Private Sub init()
Dim cnx As OleDb.OleDbConnection = Nothing
Dim sql As String = "select * from UTILISATEUR"
cnx = Open_connexion()
AdaptUtilisateur = New OleDb.OleDbDataAdapter(sql, cnx)
AdaptUtilisateur.Fill(DtSet, "UTILISATEUR")
cnx = Close_connexion()
End Sub
Public Sub autre_ajout(ByVal NewUser As USER)
Dim cnx As OleDb.OleDbConnection = Nothing
init()
Dim newline As DataRow
newline = DtSet.Tables("UTILISATEUR").NewRow
newline(0) = NewUser.Login
newline(1) = NewUser.Password
newline(2) = NewUser.Question
newline(3) = NewUser.Reponse
DtSet.Tables("UTILISATEUR").Rows.Add(newline)
cnx = Open_connexion()
Dim cmdBuild As OleDb.OleDbCommandBuilder
cmdBuild = New OleDb.OleDbCommandBuilder(AdaptUtilisateur)
AdaptUtilisateur.InsertCommand = cmdBuild.GetInsertCommand()
AdaptUtilisateur.Update(DtSet, "UTILISATEUR")
cnx = Close_connexion()
End Sub |