Bonjour,
J'ai crée un code qui permet à un utilisateur d'importer dans une base de données , dans la table TERMES des enregistrements d'un fichier texte.
Or je voudrais que cet utilisateur puisse sélectionner les lignes qu'il veut pour les importer dans la table TERMES.
Or ce n'est pas le cas pour l'instant car toutes les lignes du fichier sélectionné sont parcourues et importées dans la base de données.
Pouvez vous m'aider à donner la possibilité à un utiloisateur de choisr les lignes qu'il veut importer .
Merci beaucoup de votre aide.
voici le code actuel
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 Private Sub menu_importer_descripteur_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles menu_importer_descripteur.Click Dim clsinStream As New System.IO.MemoryStream Dim ouverturefichier As New OpenFileDialog Dim workfile As String = Nothing ouverturefichier.Title = "Selection d'un fichier pour l'import dans la base de données" ouverturefichier.Filter = "Text Files {*.txt}|*.txt" If ouverturefichier.ShowDialog(Me) = Windows.Forms.DialogResult.OK Then workfile = ouverturefichier.FileName Else Exit Sub End If uploadfile(workfile) End Sub
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
42
43
44
45
46
47 Private Function uploadfile(ByVal workfile As String) As Boolean If File.Exists(workfile) = True Then 'le fichier existe, on déclare les objets Dim bresult As Boolean = True Dim ar As StreamReader = New StreamReader(workfile) Dim db_command As New SqlCommand Dim sql_insert As String Dim descripteurligne As String objConn.Open() db_command.Connection = objConn db_command.Parameters.Add("@lib_terme", "") sql_insert = " insert into termes(lib_terme,EM,ID_THES) values(@lib_terme, 0," & intNumThes.ToString & ")" db_command.CommandText = sql_insert 'on parcourt toutes les lignes du fichier , chaque ligne étant un descripteur Do While ar.Peek >= 0 descripteurligne = ar.ReadLine MessageBox.Show(descripteurligne) 'on met à jour la valeur du paramètre db_command.Parameters("@lib_terme").Value = descripteurligne 'on insère un nouvel enregistrement Try db_command.ExecuteNonQuery() Catch ex As Exception bresult = False MessageBox.Show(ex.Message, "erreur", MessageBoxButtons.OK, MessageBoxIcon.Error) End Try Loop 'on ferme les objets ar.Close() db_command.Dispose() objConn.Close() objConn.Dispose() Return bresult Else Return False End If End Function
Partager