いや、もう、わっかんねぇ~!!!
件名:ROWSTATEの変更(Insider.NET 会議室)より:
DataTable+DataAdapterでの更新で
DataTableをコピーして別のテーブルに更新しようとしていますが
必ずINSERTにしたい為、ROWSTATEを全てADDの状態にしたいのですが
可能でしょうか?(ReadOnlyと出てきます)
無理ならと思いまして
ImportRowを使い
DataTable.ImportRow(Dataset.Tables("TBLNAME").Rows(0))
としましたが,行の状態もコピーされてしまいます。
不可能なのでしょうか?
この質問から、どうやって3ページ目の実行結果を想像しろってぇのさ?
なんていうか。。。考えてる?自分で考えてる?何が必要か、考えてる?必要なものを満たすために、何が必要か、考えてる?
プログラムってのは、手順なんです。何かを実現するための手順。
何かをするためには、まず、「何か」とは何か?それを明らかにする必要があります。例えば、「あれ、取ってきて」といわれて、取ってこれますか?まず、「あれ」が何を意味しているのか、知らなければなりませんよね。プログラムを作るのも同じ。まず、どういう状態にしたいのかを決めなければなりません。
次に、「あれ」がどこにあるのかを知らなければなりません。これは、頼まれた人が知ってる場合もあれば、頼んだ人しか知らない場合もあります。なので、自分が知っているものか確認し、知らなければ聞きます。プログラムも同じです。できあがった状態を、自分が正確にイメージできなければなりません。
そして、場合によっては、「あれ」がある場所までの道順を尋ねなければならないかもしれません。あるいは、「あれ」が遠くにある場合、移動手段を考えなければならないかもしれません。「あれ」がその場所になかったとき、代替品があるのか、「あれ」を持って行った人を探さなければならないのか、考えます。
このように、プログラムを考えるということは、実行するために必要な手順を考える、ということなのです。「手続き型言語」という言葉の由来は、まさにここにあるのです。
この手順を考えるとき、避けた方がよいことがあります。
ひとつは、複数のことを同時に考えること。
ひとつは、一足飛びに実現しようとすること。
ひとつは、最初から順番に考えること。
複数のことを同時に考えること、混乱します。説明するまでもなく、分かりますね。
一足飛びに考えるというのは、必要な手順を飛ばすということです。必要な手順が飛んでいるので、その手順によっては無駄が生じます。
最初か考えるというのは、分かっているのはゴールだから、反対から考えた方が考えやすい、ということです。実現したいことをするために、何が必要か。その必要を満たすために、何が必要か。このように、ゴールから考える方が楽だと、私は思います。
投稿日時 : 2007年10月22日 21:31