0

DBDataAdapter.Update メソッドのコード サンプルを使用して、データベース内のテーブルをクリアしようとしました。

using (SqlConnection connection = new SqlConnection(connectionString))
{
     SqlDataAdapter adapter = new SqlDataAdapter("SELECT * FROM WebCam", connection);
     DataTable table = new DataTable();
     adapter.Fill(table);
     table.PrimaryKey = new DataColumn[] { table.Columns["Date"] };
     //table.Rows[0]["Date"] = System.DateTime.Now; //It's OK to modify a row 
     table.Clear(); //But it is not working to clear the table
     SqlCommandBuilder builder = new SqlCommandBuilder(adapter);
     adapter.Update(table);
}

新しい行を追加したり、既存の行を変更したり、変更をデータベースにコミットしたりできますが、テーブルを空にしようとすると、「テーブル」への変更をデータベースにコミットできず、例外もスローされません。

私は何かが恋しいですか?

4

1 に答える 1

0

次の行でエラーが発生するはずです。

table.PrimaryKey = new DataColumn[] { table.Columns["Date"] };

これは、おそらく関数が呼び出されている場所から例外をキャッチし、メッセージボックスにエラーを表示していないことを意味します。

別の理由として、Table、a​​dapter などの単語を使用していることが考えられます。私の推測では、いくつかの予約語機能をオーバーロードしている可能性があります。

于 2012-01-05T17:19:08.240 に答える