■3980 / ) |
Re[8]: mdb(oleb)の更新ができない |
□投稿者/ hikaru (7回)-(2007/05/30(Wed) 17:46:44)
|
■No3972 (はつね さん) に返信 ぽぴ王子さま、ダッチさま、はつねさま、ありがとうございました。
まさに、 ぽぴ王子さまの言われる通りです。 私の文章を理解していただき、ありがとうございます。 DataRow dr3 = ds3.Tables[Log].Rows[0]; dr3.BeginEdit(); ds3.EndEdit(); を追加したら解決できました。
これをきっかけに、複数行の更新も試みましたが、エラーとなりました。 自分で考え、解決できなかったら別スレで質問すかもしれませんので、 そのときは、あ〜、あのときの質問かと思ってまたお知恵をおかしください。
余談なんですが、、、今回のように1件のデータを抽出して更新、または、削除するとき DataSet(非接続型)を使うべきでしょうか?もしくはコマンド(ExecuteNonQuery?)を使用したらいいのでしょうか? 今回、悩みましたが、勉強もかねて(皆さんに迷惑をおかけしましたが)DataSetを使いました。 ADO.NET(接続型、非接続型)の基本的なことかもしれませんが、皆さんのお知恵をお貸しください。 本を読んだり、サイトも拝見しましたが、納得できませんでした。 もしよろしければ、ご意見などお伺いできたら、ありがたいです。
> ■No3963 (hikaru さん) に返信 >>そこでお知恵を拝借したいのですが、その前に仕様が説明不足でした。すいません。 >>そもそもこのLogデータは1件しかないく、データの日付で更新内容を判断し、更新日と番号を上書き(更新)します。 >>なので、DataRow dr3 = ds3.Tables[Log].NewRow();でデータをテーブルをコピーしていますが、そもそもこれが間違ってるんですかね。 >>それをどうしたら、テーブルに反映できるのでしょうか? > > tb3.Rows.Count == 1 > で判断していますので、もし、その1レコードを更新したいのであれば、ぽぴ王子が書かれているほう方がまさにレコードの更新を行うための方法です。 >
|
|