2011-07-18 17 views
0

私のデータベースからいくつかのフィールドを選択して変数として保存しようとしていますので、それらを使ってページにデータを表示できます。私はfirstNameというという変数にフィールドfNameをを保存することができるように私はこれを変更する必要がありますどのように思ったんだけどSQLフィールドを変数として保存しますか?

protected void DefaultGrid_SelectedIndexChanged(Object sender, EventArgs e) 
    { 
     string firstName; 
     GridViewRow row = DefaultGrid.SelectedRow; 
     int id = Convert.ToInt32(row.Cells[9].Text); 
     string checkStatement = "Return fName FROM SecureOrders WHERE IdentityColumn LIKE @identity"; 
     using (SqlConnection connection = new SqlConnection(connectionString.ToString())) 
     using (SqlCommand _check = new SqlCommand(checkStatement, connection)) 
     { 
      _check.Parameters.Add("@identity", SqlDbType.Int).Value = id; 
      connection.Open(); 
      _check.ExecuteNonQuery(); 
      connection.Close(); 
     } 

:これまでのところ私はこれを持っています。正しい軌道にいるのですか?

+2

あなたは 'SELECT fName ... 'を意味すると思います – SLaks

答えて

1

あなただけの1行と1つのフィールドを返却している場合あなたはfirstName = (string) _check.ExecuteScalar()

0

を書くことができます。 ExecuteScalarを使用する必要があります。

あなたはDataReaderオブジェクトとのExecuteReaderを使用し、それ以上のものを返すつもりなら。

コマンドのようなusingステートメント内にも接続を配置する必要があります。 あなたのsql statememntはSelect Field1、Field2..nである必要があります。ここでX = @変数

0

あなたは正しい軌道に乗っていますが、フィールドを保存する方法は、一度それを取得した後にそれを行う。あなたはそれを表示しようとしていますか?あなたはそれを何に表示するつもりですか? Here'sいくつかのシナリオの基本的な構文より明示的な回答がもっと必要な場合は、質問に少し詳しく説明してください。

+0

これはhtmlテーブルに表示されます。私は基本的には列全体を選択しようとしていますが、その列の各フィールドを自分のhtmlテーブルに表示します。 –

+0

リーダーはアダプタより高速ですが、たくさんのコードを書きたくない場合は、簡単にループバックして独自のhtmlテーブルを構築できるDataTableを取得するので、アダプタを使用してください。 HtmlTableを構築してページにレンダリングすることができます。この[example](http://www.csharpest.net/?p=89)を参照するか、divのような別のタイプの要素を使用する場合は、[HtmlGenericControl](http:// msdn新しいHtmlGenericControl( "div");次のような任意の要素を作成できます:.htm/.jpg/library/system.web.ui.htmlcontrols.htmlgenericcontrol%28v =対80%29.aspx) –

+0

コードの構造、構造、構造の基礎を見たいだけなら、[こちらを読む](http://www.csharp-station.com/Tutorials/AdoDotNet/lesson01.aspx) –

関連する問題