0
私はC#でソフトウェアを作成しています。私はAccessデータベース内のいくつかの情報を更新しようとしました。ここに私のデータベースのフィールドです。 Date
,total_h
,W_hours
,delay_h
。 Date
がプライマリキーです。だから私はDate="datetimePicker.text"
のデータを更新したい。ここでコードは私が試みたものです。アクセスデータベースが正しく更新されない
try
{
connection.Open();
OleDbCommand cmd = new OleDbCommand();
cmd.Connection = connection;
string update = "update summery_data set total_h='"+tHour+"', delay_h='"+delay+"' WHERE Date= " + dateTimePicker1.Text + " ";
cmd.CommandText = update;
cmd.ExecuteNonQuery();
MessageBox.Show(" Updated successfully");
connection.Close();
}
catch(Exception ex)
{
MessageBox.Show(ex.Message);
}
プログラムは正常に実行されており、「更新が正常に完了しました」というメッセージも表示されます。しかし、私が開いて、データベースをチェックすると、データは更新されていません。私は問題が何であるか理解できません...?誰かがそれを知ってくれて助けてください。
にデータベースのコピーを見ています。接続文字列のDataDictionaryパスを参照してください。それはひどいクエリです。 SQLインジェクションを避け、フォーマット・エラーを回避するには、常にパラメータを使用します。 – LarsTech
あなたの列の種類は何ですか? –
日付:-date/time total_h: - テキスト、W_hours:-Text、delay_h:-text –