Bonjour tous le monde.
J'ai un petit souci sur un bout de programme.
Mon problème :
J'ai un fichier base de données acces. Donc un xxx.mdb
Actuellement je sais ajouter un nouvel enregistrement dans la base de donnée grâce à ceci :
Donc ce bout de programme me permet d'ajouter une nouvelle ligne dans ma base de données.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
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 Imports System.Data.OleDb Public Class Form2 Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click Dim cn As OleDbConnection Dim cmd As OleDbCommand Dim dr As OleDbDataReader Dim icount As Integer Dim str As String ' Try cn = New OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\Users\Florent\Desktop\Programme test\test1.mdb") cn.Open() str = "insert into tab1 (col1,col2,col3) values(" & TextBox1.Text & "," & TextBox2.Text & "," & TextBox3.Text & ")" 'string stores the command and CInt is used to convert number to string cmd = New OleDbCommand(str, cn) cmd.ExecuteNonQuery() ' MessageBox.Show(icount) 'displays number of records inserted ' Catch ' End Try cn.Close() MsgBox("OK") End Sub
Ensuite je sais lire la base de donnée grâce à ceci.
Ce code me permet de rajouter dans ma "combobox" l'incrémentation qui me permet de choisir ensuite la ligne que je veut lire. Une fois la ligne sélectionnée je peut insérer les enregistrements dans mes "Textbox" grâce au code suivant.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21 Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click Dim cn As OleDbConnection Dim cmd As OleDbCommand Dim dr As OleDbDataReader Dim icount As Integer Dim str As String Try cn = New OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0; Data Source=C:\Users\Florent\Desktop\Programme test\test1.mdb;") 'provider to be used when working with access database cn.Open() cmd = New OleDbCommand("select * from tab1", cn) dr = cmd.ExecuteReader While dr.Read() Me.ComboBox1.Items.Add(dr(0)) End While Catch End Try dr.Close() cn.Close() End Sub
Voila jusque la, je sais
Code : Sélectionner tout - Visualiser dans une fenêtre à part
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
31
32
33
34
35
36
37
38
39
40
41 Private Sub Button3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button3.Click Dim cn As OleDbConnection Dim cmd As OleDbCommand Dim dr As OleDbDataReader Dim icount As Integer Dim str As String Dim txt Dim txt1 txt = Me.ComboBox1.Text If txt = "" Then MsgBox("veuillez sélectionner un numero") Exit Sub End If Try cn = New OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0; Data Source=C:\Users\Florent\Desktop\Programme test\test1.mdb;") 'provider to be used when working with access database cn.Open() cmd = New OleDbCommand("select * from tab1", cn) dr = cmd.ExecuteReader While dr.Read() txt1 = dr(0) If txt1 = txt Then Me.TextBox1.Text = dr(0) Me.TextBox2.Text = dr(1) Me.TextBox3.Text = dr(2) End If End While Catch End Try dr.Close() cn.Close() MsgBox("Fini") End Sub
1 - Ajouter une nouvelle ligne dans la base
2 - Lire la base de données.
Mais la ou je bloque,,, Une fois que j'ai lu une ligne de la base de données, c'est de modifier une valeur et ensuite de la ré-injecter dans la bonne colonne et ligne dans la base de données ????
Si quelqu'un à une idée ????
Partager