none
SQL hatası ... RRS feed

  • Soru

  • System.Data.SqlClient.SqlException was unhandled
      Message="The parameterized query '(@prnName nvarchar(4000),@prnSurName nvarchar(4000),@prnTel nvar' expects the parameter '@prnGender', which was not supplied."
      Source=".Net SqlClient Data Provider"
      ErrorCode=-2146232060
      Class=16
      LineNumber=0
      Number=8178
      Procedure=""
      Server=".\\SQLEXPRESS"
      State=1

     

     

           private void btnprnupdate_Click(object sender, EventArgs e)
            {
                if (txtPrnName.Text == "" || txtPrnSureName.Text == "" || txtPrnPassword.Text == "" || txtPrnEgn.Text == "")
                {
                    MessageBox.Show("All text fields must be full", "Attenton");
                }
                if (cmbPstBox.Text == "" || cmbPstBox.Text == "Select Position" || cmbPstBox.Text == "Select personal type")
                {
                    MessageBox.Show("Please choose personal position", "Attention");
                }
                if (radioButton1.Checked == false && radioButton2.Checked == false)
                {
                    MessageBox.Show(" Personal Gender must be selected ", "Attention");
                }
                else if (radioButton1.Checked == true && radioButton2.Checked == false)
                {
                    gender = "Mr.";
                }
                else if (radioButton1.Checked == false && radioButton2.Checked == true)
                {
                    gender = "Mrs.";
                }
                    string fullpath;
                    string posit;
                    string depart;
                    fullpath = txtPrnName.Text.Replace("'", "''") + txtPrnSureName.Text.Replace("'", "''");
                    posit = cmbPstBox.Text.ToString();
                    depart = cmbdepart1.Text.ToString();
                    SqlConnection cnn = DBConfigs.DataCon();
                    SqlCommand cmd = new SqlCommand("UPDATE PrnInf SET PrnName=@prnName,PrnSurName=@prnSurName,PrnEgn=@prnEgn,PrnTel=@prnTel,PrnBirthDate=@prnBirthDate,PrnMail=@prnMail,PrnGender=@prnGender,PrnPosit=@prnPosit,PrnDepart=@prnDepart,PrnPwd=@prnPwd,PrnAddress=@prnAddress Where PrnFullName=@prnFullName", cnn);
                    cmd.Parameters.AddWithValue("@prnName", txtPrnName.Text.Replace("'", "''"));
                    cmd.Parameters.AddWithValue("@prnSurName", txtPrnSureName.Text.Replace("'", "''"));
                    cmd.Parameters.AddWithValue("@prnTel", txtPrnTel.Text.Replace("'", "''"));
                    cmd.Parameters.AddWithValue("@prnBirthDate", txtPrnBirthDate.Text.Replace("'", "''"));
                    cmd.Parameters.AddWithValue("@prnEgn", txtPrnEgn.Text.Replace("'", "''"));
                    cmd.Parameters.AddWithValue("@prnMail", txtPrnEmail.Text.Replace("'", "''"));
                    cmd.Parameters.AddWithValue("@prnGender", gender);
                    cmd.Parameters.AddWithValue("@prnPosit", posit);
                    cmd.Parameters.AddWithValue("@prnDepart", depart);
                    cmd.Parameters.AddWithValue("@prnAddress", txtPrnAddress.Text);
                    cmd.Parameters.AddWithValue("@prnPwd", txtPrnPassword.Text.Replace("'", "''"));
                    cmd.Parameters.AddWithValue("@prnFullName", fullpath);

                    cmd.ExecuteNonQuery();
                    MessageBox.Show("Personal data has been updated", "Information");
                    cnn.Close();

     

    kodlar burad. lakin neden beslenemeyen kaynak demekte ?

    30 Haziran 2011 Perşembe 16:43

Yanıtlar

  •  Merhaba,

    Kodunuzda aslında bir akış hatası var. Kullanıcının değerleri girip girmediğini kontrol ediyorsunuz; fakat girmese bile programı yürütmeye devam ediyorsunuz. Ayrıca komutu çalıştırdıktan sonra etkilenen satır sayısına bakmadan kayıtın güncellendiğine dair mesaj yazıyorsunuz. Radiobuttondan seçeneği kesin seçtiniz mi ? Programda başka Radiobuttonlar varsa isim hatası yapıyor olabilirsiniz. Çünkü burada bana en yakın gelen ihtimal gender değerinizin null kalması.


    SK
    1 Temmuz 2011 Cuma 02:30