Bonjour,
j'effectue un transfert de données entre une base ORACLE et une base SQL SERVER.
J'effectue un INSERT INTO avec des parametres, mon problème est que seule la moitiée des lignes s'insert dans la base. Je pense que cela vient du fait que j'efface mes paramètres à la fin de chaque bboucle, mais je ne parviens pas à trouver de solution, merci d'avance de votre aide !
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 For i = 0 To total - 1 'compte le nombre de lignes dans oracle commande_sql1.Connection = maconnexion_sql1 'récupère les noms des champs PERDB automatiquement et leur attribut la valeur du même champs venu de PERDB dans SQL SERVER 'déclare les paramètres, les valeurs des champs Dim champ0 As New SqlClient.SqlParameter("@champ0", SqlDbType.NVarChar, 100) champ0.Value = ds.Tables("TABLE1").Rows(i)(0) commande_sql1.CommandText = "INSERT INTO Table_VHC_INVT(" & ds.Tables("TABLE1").Columns(0).ToString) VALUES (@champ0)" 'ajoute les paramètres à la connexion commande_sql1.Parameters.Add(champ0) commande_sql1.ExecuteNonQuery() 'IMPORTANT !! commande_sql1.Parameters.Clear() Next maconnexion_sql1.Close()
Partager