VB Net経由でMS AccessデータベースにDate値を挿入しようとしましたが、「xxxxxをタイムパンに変換できません」というエラーが表示されます。私はこれを試してみました:アクセスデータベース(VB Net)に時間を挿入する方法
ComandoBD.Parameters.Add("@Hora", OleDbType.DBTime).Value = TimeOfDay.ToString("HH:mm:ss")
ComandoBD.Parameters.Add("@Hora", OleDbType.DBTime).Value = TimeOfDay
ComandoBD.Parameters.Add("@Hora", OleDbType.DBTime).Value = time.TimeOfDay
しかし、何も、唯一の時間のためのオプションがないため、時間フィールドが「日付/時刻」に設定されているAccessデータベースで。
これは、そのセクションの全体の抜粋です:
For i As Integer = 0 To Form2.DataGridView2.Rows.Count - 2
Try
ConexionBD.Open()
ComandoBD.Connection = ConexionBD
ComandoBD.CommandText = "INSERT INTO Ventas (IdProducto, Fecha, Hora) VALUES (@IdProducto, @Fecha, @Hora)"
ComandoBD.Parameters.Add("@IdProducto", OleDbType.VarChar).Value = Form2.DataGridView2.Rows(i).Cells(0).Value
ComandoBD.Parameters.Add("@Fecha", OleDbType.DBDate).Value = Now
ComandoBD.Parameters.Add("@Hora", OleDbType.DBTime).Value = time.TimeOfDay
ComandoBD.ExecuteNonQuery()
ComandoBD.Dispose()
Catch ex As Exception
MsgBox(ex.ToString)
End Try
ConexionBD.Close()
Next
私はそれを行うと(他のフィールドのために)OleDbType.Booleanまたは私はどんな問題を抱えているドントさえOleDbType.Binary OleDbType.VarChar、と。
助けてください。
ありがとうございました。
は'日/ Time'です。あなたはそれに変換エラーを得るべきではありません。他に何かがある場合に備えて、クエリ全体を表示することもできます。 – Plutonix
ありがとうPlutonix、私は最後のもの(time.TimeOfDay)を試してみたときにコードを更新しました。それは 'time'を宣言するために必要であると宣言しています。 –
宣言されていない変数は、全く異なるエラーであり、変換とは関係ありません。 'DateTime.Now.TimeOfDay'は動作する' Timespan'を返します。 – Plutonix