2017-03-15 21 views
1

生徒のファーストネームを更新しようとしていますが、テキストボックスの情報を変更して変更を書き込もうとすると、 "FirstNameTextbox"情報がDBからロードされましたそれは元のデータだけを読み込みます。もしそれがDBからの最初の名前として "Craig"をロードした場合、私は編集し、 "クリス"をテキストボックスに入れます。何が起こるかは、 "Chris"ではなくDBに書き込まれます。更新されたテキストボックス情報をDBに更新するC#

int stuID = getSqlStuID(IDNUMLabel.Text); 
SqlConnection conn = new SqlConnection(GetConnectionString()); 
string sqlUpdateStudent = "Update tblStudent set fname = @fname where stuID = @stuID"; 
SqlCommand cmd = new SqlCommand(sqlUpdateStudent, conn); 

conn.Open(); 

cmd.Parameters.AddWithValue("@stuID", stuID); 
cmd.Parameters.AddWithValue("@fname", FirstNameTextbox.Text); 

cmd.ExecuteNonQuery(); 

ErrorMessage.Text = "Success"; 


protected void Page_Load(object sender, EventArgs e) 
{ 
    if (Session["User"] != null) 
    { 
     IDNUMLabel.Text = Session["User"].ToString(); 
     getStuData(Session["User"].ToString()); 
    } 
    else 
    { 
     Response.Redirect("../Login/Login.aspx"); 
    } 
} 

private void getStuData(string id) 
{ 
    SqlConnection conn = new SqlConnection(GetConnectionString()); 

    string sql = "Select fname, sname From tblStudent Where idnumber = '" + id + "' "; 

    SqlCommand cmd = new SqlCommand(sql, conn); 

    try 
    { 
     conn.Open(); 

     SqlDataReader selectedRecord = cmd.ExecuteReader(); 

     cmd.CommandType = CommandType.Text; 

     while (selectedRecord.Read()) 
     { 
      FirstNameTextbox.Text = selectedRecord["fname"].ToString(); 
      LastNameTextbox.Text = selectedRecord["sname"].ToString(); 
     } 

     selectedRecord.Close(); 
    } 
    catch (System.Data.SqlClient.SqlException ex) 
    { 

     //id = 0; 
     //string msg = "Error reading Student ID"; 
     //msg += ex.Message; 
     //throw new Exception(msg); 
    } 
    catch (Exception ex) 
    { 

    } 
    finally 
    { 
     conn.Close(); 
    } 
} 
+0

cmd.Parameters.AddWithValue( "@ fname"、FirstNameTextbox.Text);でブレークポイントを設定します。 stuIDの価値は何ですか?あなたのデータベースにそのようなエントリがありますか? @fnameの値も確認してください。 – hellogoodnight

+1

clasicのように見えます。「すべてのページ読み込みで情報を読み込む」問題です。あなたの質問を編集し、制御コードに読み込みを追加して、どのイベントと条件が実行されたかを説明してください – bradbury9

+0

あまりにもずっと前にそれを追加しました –

答えて

0

実際の更新はいつ行うのですか?ボタンを押した後、値がテキストボックスに入力された後...?更新を処理するコードが置かれているメソッドが欠落しています。 おそらくこれが役に立ちます:How to display data from database into textbox, and update it

+0

Daniloこれはまさに私が探していたソリューションのタイプです。 #Respect –

+0

問題の人はいません。私は助けてくれるとうれしいです。コーディングを続けてください! –

関連する問題