2012-03-24 8 views
2

にデータを取得する私のASP.Net Webページでは、ラベルがあり、データベースから取得するラベルのテキストが必要です。SQL Serverデータベースからラベル

私は必要なもの

から、私のデータベース内Price列からデータを取得することです...私は私のデータベースへの書き込みを何の問題もないが、それは再びデータをretieveしようとしていることは使命であると思われますテーブルTicketsConcertNameのデータが私のウェブページのタイトルと同じか、または私のウェブページに関連付けられているレコードから。

私はすでに多くのチュートリアルを試してきましたが、すべてエラーが表示されるので、私はちょうど与えて静かに私のラベルを作る前に1つの最後の場所を試してみることにしました。それが助け場合

は、私は次の試みている:あなたは、C#を使用し

First Try

Second Try

Third Try

Fourth Try

答えて

4

希望を

string MyPageTitle="MyPageTitle"; // your page title here 
string myConnectionString = "connectionstring"; //you connectionstring goes here 

SqlCommand cmd= new SqlCommand("select Price from Tickets where ConcertName ='" + MyPageTitle.Replace("'","''") + "'" , new SqlConnection(myConnectionString)); 
cmd.Connection.Open(); 
labelPrice.Text= cmd.ExecuteScalar().ToString(); // assign to your label 
cmd.Connection.Close(); 
+0

とADO .NETのMSDNのドキュメントへのリンクはすべて私が既存のことを働いていますコードが正しく、ちょうどコマンド文字列が必要でした。それは働いたので、ありがとう。 –

1

ラベルをデータソースにバインドするように見えます。 Hereは素晴らしい例です。

1

ここでは、SQLインジェクションからの保護の例を示します。暗黙性は、SqlConnectionオブジェクトを "using"ステートメントで破棄します。

string concert = "webpage title or string from webpage"; 

using(SqlConnection conn = new SqlConnection(WebConfigurationManager.ConnectionStrings["connString"].ConnectionString)) 
{ 
    string sqlSelect = @"select price 
         from tickets 
         where concert_name = @searchString"; 
    using(SqlCommand cmd = new SqlCommand(strSelect, conn)) 
    { 
     cmd.Parameters.AddWithValue("@searchString", concert); 
     conn.Open(); 
     priceLabel.Text = cmd.ExecuteScalar().ToString(); 
    } 
} 

あなたはもう少しADO .NETを研究に興味があるなら、ここでフレームワーク4.0

http://msdn.microsoft.com/en-us/library/h43ks021(v=vs.100).aspx

+0

SqlCommandもIDisposableを実装しています。なぜなら、usingステートメントでもそれを使用してみませんか? – Bridge

関連する問題