私は単純なデータロギングプログラムを作成しています。私は少しのVBフォームアプリケーションを書き込んで、データをmsアクセスに記録してグラフにしましたが、データベースにレコードを追加することに問題があります。vb 2010で保存されていないmsアクセスデータベースにレコードが追加されました
まず、簡単なアクセスで1つのテーブルデータベースを作成しました。次に、データベースをプロジェクトにデータソースとして追加し、ウィザードを使用してデータセットを与えました。今私のコードは次のようになります。
Public Class mainForm
Dim da As New dsTableAdapters.Sensor_DataTableAdapter
...
私のデータベースには、単にSensor_Dataと呼ばれるテーブルで構成されています。私のデータセットは、データベースをデータソースとして追加したときに作成されたDsです。私は新しいデータが到着するたびにupdAccess()サブルーチンを呼び出します。スイッチケースは無視してください。将来の機能性のためです。
...Private Sub updAccess(ByVal data() As String)
Select Case data(0)
Case "001"
Ds.Sensor_Data.Clear()
da.Fill(Ds.Sensor_Data)
Dim dsNewRow As DataRow = Ds.Sensor_Data.NewSensor_DataRow
dsNewRow.Item("Sensor 1") = data(1)
dsNewRow.Item("Sensor 2") = data(2)
dsNewRow.Item("Sensor 3") = data(3)
dsNewRow.Item("Sensor 4") = data(4)
dsNewRow.Item("Sensor 5") = data(5)
dsNewRow.Item("Sensor 6") = data(6)
dsNewRow.Item("Sensor 7") = data(7)
dsNewRow.Item("Sensor 8") = data(8)
dsNewRow.Item("Sensor 9") = data(9)
dsNewRow.Item("Sensor 10") = data(10)
Ds.Sensor_Data.AddSensor_DataRow(dsNewRow)
da.Update(Ds.Sensor_Data)
Case "002"
'TODO: update settings panel
End Select
End Sub
...
は、ビルドや実行時間の間に何も問題はありませんが、プログラムを実行した後、私は、データベースへの変更が表示されません。どんな入力も大歓迎です。また、推奨される参考資料も歓迎されます。
da.Fill(Ds.Sensor_Data、 "tablename") –
少し詳しく説明できますか?私はそのコマンドで構文エラーが発生します。また、現在の塗りつぶし線がデータセットに関連するデータを入力していることを確認しました。 – Casbar77
こんにちはCasbar、あなたのアクセスDBへの接続文字列が 'DS 'にありますか?表示しているコードからは、何も接続されていない新しいデータ行が作成されているようです。 – Pynner