none
AccessDataSourceを使ったデータ処理 RRS feed

  • 質問

  • いつもお世話になります。標題の件で、わからないことがあります。

    まず、何をしているか?からですが、

    データベース
    listno | name | company | check | flag
    1         TARO    ABC LTD    True      101
    2         JIRO    ZZZ LTD    True      101
    3         GORO    YYY LTD    True      101

    このACCESSデータベースにAccessDataSourceを使って接続し、GridViewに表示しています。

    ある処理をするときに、状況に応じて『check』の項目を『True』『False』に切り替えたいのですが、その他の項目は編集する必要がないので、GridViewの各項目は『ReadOnly』に設定しています。また、『listno』は主keyで、『flag』は裏側の処理上設定しているだけなのでGridViewでは表示していません。

    そして、GridViewの編集機能を利用して、checkのみを編集しようと思うのですが、更新するときに、『name』『company』が空欄になってしまいます。

    GridViewの『ReadOnly』をFalseにして、編集モード時に全ての項目でtextboxが表示される状態であれば更新は正常に終了します。

    状況から判断するとSQL文を改造すると更新できそうなのですが、どうにもうまくいきませんでした。

    わざわざコードを書くほどではないので、.net のメリットを生かしてコードレスで作りたいと思うのですが、この状況を解決する方法をご存じの方がいらっしゃいましたら教えていただけませんでしょうか?

    よろしくお願いします。
    2009年1月5日 14:08

回答

  • AccessDataSource の UpdateCommand が以下のようになっていませんか?

     

    UPDATE [テーブル名] SET [name] = ?, [company] = ?, [check] = ? WHERE [listno] = ?

     

    そうであれば、これから [name] = ?, [company] = ?, を削除し、さらに UpdateParameters
    の中の該当する(name と company の)aspStick out tonguearameter を削除して試してみてください。

    2009年1月5日 15:19

すべての返信

  • AccessDataSource の UpdateCommand が以下のようになっていませんか?

     

    UPDATE [テーブル名] SET [name] = ?, [company] = ?, [check] = ? WHERE [listno] = ?

     

    そうであれば、これから [name] = ?, [company] = ?, を削除し、さらに UpdateParameters
    の中の該当する(name と company の)aspStick out tonguearameter を削除して試してみてください。

    2009年1月5日 15:19
  •  SurferOnWww さんからの引用

    さらに UpdateParameters
    の中の該当する(name と company の)asparameter を削除して試してみてください。

     

    顔マークに化けてしまいました。その部分は、具体的には下記のようになってい

    ると思います。

     

    Code Snippet

    <UpdateParameters>
        <asp:Parameter Name="name" Type="String" />
        <asp:Parameter Name="company" Type="String" />
        ・・・以下略・・・

     

     

    2009年1月5日 15:25
  • 新年おめでとうございます。いつもお世話になっております。本年も何卒よろしくお願いします。

    早速の書き込み誠にありがとうございます。

    ご指摘の方法で見事に解決しました。

    SQL文、
    UpdateParameters を一度いじったのですが、そのときの構文か方法が良くなかったようで、この方法にたどり着けませんでした。

    貴重なご指摘をいただきまして誠にありがとうございます。

    これに懲りずに今後ともよろしくお願いします。

    最後に、SurferOnWww さまが今年一年も健康で幸せに暮らせますようお祈りしております。
    2009年1月5日 15:55
  • ご丁寧に有難うございます。

     

    ぷらさんにとってもよいお年でありますよう・・・

     

    2009年1月6日 11:37