@IT会議室は、ITエンジニアに特化した質問・回答コミュニティ「QA@IT」に生まれ変わりました。ぜひご利用ください。
- PR -

GridViewの手動更新について

1
投稿者投稿内容
ムラ
ベテラン
会議室デビュー日: 2008/12/19
投稿数: 51
投稿日時: 2009-04-06 13:51
また、どうしてもわからないことが発生したのでお願いいたします。

GridViewでの更新作業を今まではTableAdapterでクエリを作り、

それをObjectDataSourceにてGridViewを更新していました。

そして今度はGridViewの更新をSqlDataSourceにて手でクエリを作って

GridViewを更新する必要が出てきました。

しかしSqlDataSourceを使うとうまくいきません。

手で作成するときのポイントをご教授願います。

☆SqlDataSourceのSQLステートメントを入れるときにやったこと
 @「Select」タブは、全てのカラムを指定した。 ※全て選択したが表示しないものはVisibleをFalseとした。
 A「Update」タブは、主キーのカラムはSETで指定せずWHERE句だけ「original_カラム名」で指定し、VisibleをFalseにしたのはSETもWHEREも指定しない。

環境
ツール:VisiableStudio2005
DB:SQLServer2005

[ メッセージ編集済み 編集者: ムラ 編集日時 2009-04-06 13:53 ]
ごう
会議室デビュー日: 2009/04/06
投稿数: 2
投稿日時: 2009-04-06 14:36
「うまくいきません」の詳細を教えてください。

* エラーが出るのですか? 出るとしたらどんなエラーですか?
* 表示してほしい情報(行)が表示されないのですか?
ムラ
ベテラン
会議室デビュー日: 2008/12/19
投稿数: 51
投稿日時: 2009-04-06 14:47
エラーはでないのですが、GridViewの編集機能で更新ボタンを押してもその行は更新されないのです。

それともGridViewかSqlDataSourceのプロパティを設定する必要があるのでしょうか?
ごう
会議室デビュー日: 2009/04/06
投稿数: 2
投稿日時: 2009-04-06 15:16
ここが参考になるのではないでしょうか。

http://www.cocoaliz.com/asp.net/index/44/
Access
ぬし
会議室デビュー日: 2002/04/08
投稿数: 829
投稿日時: 2009-04-07 06:33
データベースの更新処理ですが、

◆SqlDataSourceをウイザードを利用して作成して更新処理を
 100%システムに委ねるか

◆ADO.NETで100%自分でコントロールするか

どちらかにした方が処理が簡単なような気がします。

いずれにしても、GridView+SqlDataSourceで更新するときは、
更新処理がブラックボックス化されていますのでバックグラウンドで
どんな処理を行っているのか理解する必要があります。

_________________
ASP.NET+Ajaxサンプル集 | JavaScript+Ajaxサンプル集
ムラ
ベテラン
会議室デビュー日: 2008/12/19
投稿数: 51
投稿日時: 2009-04-07 08:06
Access様の言われたとおりSqlDataSourceをウィザードを利用して作成したらできました。
前まではGridViewの更新の仕組みがわからず、ただ単純にTableAdapterを作成した時点で作成されるクエリをObjectDataSouceでGridViewに結びつけて更新していましたが、今回はSqlDataSourceを使って作成しました。その内部のSQLを見ることによって、GridViewの更新の仕組みが大分理解できました。 ありがとうございました。

[ メッセージ編集済み 編集者: ムラ 編集日時 2009-04-07 08:07 ]
1

スキルアップ/キャリアアップ(JOB@IT)