arash.gh
شنبه 30 مهر 1390, 23:48 عصر
وقتی تکه کد زیر رو اجرا می کنم خطای زیر رو میده.
switch (tedad)
{
case 1 :
ac.karnamem(stdID, lbl1.Text, month, activeyear, Convert.ToDouble(txt1.Text));
break;
case 2 :
ac.karnamem(stdID, lbl1.Text, month, activeyear, Convert.ToDouble(txt1.Text));
ac.karnamem(stdID, lbl2.Text, month, activeyear, Convert.ToDouble(txt2.Text));
break;
}
اینم کد sql که در یک کلاس قرار داره و توسط کد بالا تابع از کلاس با مقادیر ارسالی فراخوانی میشه
public void karnamem(int stdID, string drsname, string month, string sal, double nomre)
{
con.Open();
cmd.CommandText = "insert into tblkarnamem(stdID,drsname,month,sal,nomre) values(@stdID,@drsname,@month,@sal,@nomre)";
cmd.Parameters.AddWithValue("@stdID", stdID);
cmd.Parameters.AddWithValue("@drsname", drsname);
cmd.Parameters.AddWithValue("@month", month);
cmd.Parameters.AddWithValue("@sal", sal);
cmd.Parameters.AddWithValue("@nomre", nomre);
cmd.ExecuteNonQuery();
con.Close();
}
وقتی ارا می کنم مقادیر txt1.text رو ثبت می کنه اما به txt2.text که میرسه پیغام خطای زیر رو نشون میده.
The variable name '@stdID' has already been declared. Variable names must be unique within a query batch or stored procedure.
فکر کنم داره میگه متغیر stdID@ یک بار اعلان شده نمیدونم جریان چیه من نیاز دارم این تابع رو دوبار یا هر چند بار پشت سرهم فراخوانی کنم
مشکل از کجاست به نظر شما ؟
ممنون از راهنمایی هاتون
switch (tedad)
{
case 1 :
ac.karnamem(stdID, lbl1.Text, month, activeyear, Convert.ToDouble(txt1.Text));
break;
case 2 :
ac.karnamem(stdID, lbl1.Text, month, activeyear, Convert.ToDouble(txt1.Text));
ac.karnamem(stdID, lbl2.Text, month, activeyear, Convert.ToDouble(txt2.Text));
break;
}
اینم کد sql که در یک کلاس قرار داره و توسط کد بالا تابع از کلاس با مقادیر ارسالی فراخوانی میشه
public void karnamem(int stdID, string drsname, string month, string sal, double nomre)
{
con.Open();
cmd.CommandText = "insert into tblkarnamem(stdID,drsname,month,sal,nomre) values(@stdID,@drsname,@month,@sal,@nomre)";
cmd.Parameters.AddWithValue("@stdID", stdID);
cmd.Parameters.AddWithValue("@drsname", drsname);
cmd.Parameters.AddWithValue("@month", month);
cmd.Parameters.AddWithValue("@sal", sal);
cmd.Parameters.AddWithValue("@nomre", nomre);
cmd.ExecuteNonQuery();
con.Close();
}
وقتی ارا می کنم مقادیر txt1.text رو ثبت می کنه اما به txt2.text که میرسه پیغام خطای زیر رو نشون میده.
The variable name '@stdID' has already been declared. Variable names must be unique within a query batch or stored procedure.
فکر کنم داره میگه متغیر stdID@ یک بار اعلان شده نمیدونم جریان چیه من نیاز دارم این تابع رو دوبار یا هر چند بار پشت سرهم فراخوانی کنم
مشکل از کجاست به نظر شما ؟
ممنون از راهنمایی هاتون