2010-12-06 9 views
0

クエリの結果に応じて各行の情報を変更しようとしています。私の問題は、クエリの最初の結果のみを結果に戻すことだと思っています。ASP.Net VB - SQLクエリ結果に応じてgridviewの行を変更します

クエリは「1232」行2「1243」で1行を返しますが、結果は私が間違っている可能性しか「1232」

に設定しているが、その私がここにいる理由:)

+0

あなたのSQLが間違っていると提案しているので、それも投稿できますか?機密情報が含まれている場合は、気をつけてください。 –

+1

私の経験では、単にあなたのgridviewテンプレートにlblstatusを追加するのはずっと簡単で、各行がデータバインドされているときに条件付きでコントロールを追加するのではなく、必要に応じてコンテンツを変更するだけです。ここで –

+0

はSQLです:=「(tblAccount.accountID = tblAccountStatus.accountID場所にtblCustomer.customerID = tblAccount.customerID INNER JOINをtblAccountStatus ON tblAccountStatus.statusをtblAccountを登録しようtblCustomer INNERからtblCustomer.customerIDを選択文字列として 薄暗い声明=「無効') " – kt87

答えて

2

あなたのSQLリターンと言います複数の行が表示されますが、実行するにはExecuteScalar()を使用しています。 ExecuteScalarは単一の結果、つまり最初の行の最初の列のみを返します。 SQLDataAdapterなどを使用してデータテーブルに記入する必要があるように思えます。

また、SQL文をrlbとして指定すると有益です。

+0

オイイはこれを試しても、まだ喜びはありませんでした。何が間違っているのですか?おかげ 薄暗い結果SqlDataReaderの= command3.ExecuteReader() ながらresult.Read()文字列として 薄暗いIDRes = CStr関数(結果( "得意先")) IDRes場合=可変そして TEMP = "はい" として labelstatus.Text =一時 エルス TEMP = "いいえ" labelstatus.Text =一時 エンド END IF申し訳ありませんイムは、正しい形式を編集するための貼り付けコードを取得couldntの – kt87

+0

ながら:( – kt87

+0

カール、コードはコメントではないでしょう形式を正しく入力するには、上記の質問を編集する必要があります それ。あなたの現在の問題については、貼り付けた関数がgrdView_RowDataBoundであることがわかります。データが既にgridViewにバインドされているように見えますが、なぜサーバーに対して再度クエリしていますか?既にデータバインドされている場合は、既にメモリにあるデータバインドされたオブジェクトを参照できるはずです。私はあなたがどのようにプログラムが構造化されているのか、あなたの意図を解決するのが難しいかどうかを知ることなく、推測します。 –

関連する問題