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 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67
| Dim cmdText As String = "INSERT INTO TOperationBanques (NumeroCompte, TRNTYPE, DTPOSTED, TRNAMT, FITID, NomOperation, StrMEMO) VALUES (?,?,?,?,?,?,?)"
Dim ChercheDoublon As String = "SELECT TOperationBanques.FITID FROM TOperationBanques WHERE TOperationBanques.FITID = ?"
Dim Cmd As OleDbCommand = New OleDbCommand(cmdText, MyConnexion)
Dim CmdVerifDoublons As OleDbCommand = New OleDbCommand(ChercheDoublon, MyConnexion)
Dim BonneDate As Date
Dim reader As OleDb.OleDbDataReader
Try
MyConnexion.Open()
Cmd.CommandType = CommandType.Text ' The default is CommandType.Text
CmdVerifDoublons.CommandType = CommandType.Text
CmdVerifDoublons.Parameters.Add("@p1", OleDbType.VarChar).Value = ""
With Cmd.Parameters
.Add("@p1", OleDbType.Double).Value = 0
.Add("@p2", OleDbType.VarChar).Value = ""
.Add("@p3", OleDbType.Date).Value = 1 / 1 / 1900
.Add("@p4", OleDbType.Double).Value = 0
.Add("@p5", OleDbType.VarChar).Value = ""
.Add("@p6", OleDbType.VarChar).Value = ""
.Add("@p7", OleDbType.VarChar).Value = ""
End With
'boucle qui passe en revue la datatable et ajoute la ligne a la base de données .mdb
For i = 0 To DataTableOperation.Rows.Count - 1
CmdVerifDoublons.Parameters("@p1").Value = DataTableOperation.Rows(i).Item(5)
reader = CmdVerifDoublons.ExecuteReader()
If reader.HasRows Then
'Console.WriteLine(vbTab & reader.GetName(0) & vbTab)
'Do While reader.Read()
' Console.WriteLine(vbTab & reader.GetValue(0) _
' & vbTab & "déja present" & vbCrLf)
'Loop
Else
Console.WriteLine(vbTab & DataTableOperation.Rows(i).Item(5) & vbTab & "rajouté" & vbCrLf)
'je transforme en date format anglais
BonneDate = Date.ParseExact(DataTableOperation.Rows(i).Item(3), "yyyyMMdd", Nothing)
Cmd.Parameters("@p1").Value = DataTableOperation.Rows(i).Item(1)
Cmd.Parameters("@p2").Value = DataTableOperation.Rows(i).Item(2)
Cmd.Parameters("@p3").Value = BonneDate
Cmd.Parameters("@p4").Value = Replace(DataTableOperation.Rows(i).Item(4), ".", ",")
Cmd.Parameters("@p5").Value = DataTableOperation.Rows(i).Item(5)
Cmd.Parameters("@p6").Value = DataTableOperation.Rows(i).Item(6)
Cmd.Parameters("@p7").Value = DataTableOperation.Rows(i).Item(7)
Cmd.ExecuteNonQuery()
End If
reader.Close()
Next
'fermeture de la connection
MyConnexion.Close()
MyConnexion = Nothing |
Partager