PDA

View Full Version : سوال: مشکل یک خط کد از ویرایش



09178525592
یک شنبه 06 مرداد 1392, 14:37 عصر
سلام دوستان خسته نباشید.
من یه کد ویرایش نوشتم که عمل نمیکنه فکر کنم توی این خط مشکل داشته باشه البته آخرای کد .چون یه شرط گذاشتم و میخوام بر اساس چند تکست باکس ویرایش کنه؟؟؟لطفا راهنمایی کنید؟

cmd.CommandText = "update student set groupname=@1,year=@2 where esm= '" + textBox1.Text + "' and year='" + textBox2.Text + "' and groupname= '" +textBox4.Text +"'";

godofphp
یک شنبه 06 مرداد 1392, 15:05 عصر
این چه طرز کد نوشتنه این کاملا اشتباه
یا باید با پارامتر بنویسی بعد پارامتر رو تعریف کنی مقدار بدی
یا اینکه بدون پارامتر مستقیم مقدار بدی
الان شما این دو روش رو مخلوط کردید

09178525592
یک شنبه 06 مرداد 1392, 21:52 عصر
این چه طرز کد نوشتنه این کاملا اشتباه
یا باید با پارامتر بنویسی بعد پارامتر رو تعریف کنی مقدار بدی
یا اینکه بدون پارامتر مستقیم مقدار بدی
الان شما این دو روش رو مخلوط کردید


دوست عزیز کد کاملش این پایینه دفعه اول که با یک شرط بود یعنی یک تکست باکس رو چک کنه کد کار میکرد ولی حالا که اونا رو اضافه کردم منظورم اون دو تا شرط دیگه هست که حالا دیگه کار نمیکنه؟؟

try
{

SqlConnection con = new SqlConnection();
con.ConnectionString = @"Data Source=.\SQLEXPRESS;AttachDbFilename=" + DataDirectory + ";Integrated Security=True;User Instance=True";
SqlCommand cmd = new SqlCommand();
cmd.CommandType = CommandType.Text;
cmd.Connection = con;
con.Open();

cmd.CommandText = "update student set groupname=@1,year=@2 where esm= '" + textBox1.Text + "' and year='" + textBox2.Text + "' and groupname= '" +textBox4.Text +"'";
cmd.Parameters.AddWithValue("@1", comboBox3.Text);
cmd.Parameters.AddWithValue("@2", comboBox1.Text);

cmd.ExecuteNonQuery();
con.Close();
MessageBox.Show("انتقال دانش آموز با موفقیت انجام شد", "New", MessageBoxButtons.OK, MessageBoxIcon.Information);


}
catch { }

amir200h
یک شنبه 06 مرداد 1392, 22:31 عصر
معمولا خطارو میزارن نه کدو. لطفا خطارو بزارین

khokhan
یک شنبه 06 مرداد 1392, 22:42 عصر
دوست عزیز کد کاملش این پایینه دفعه اول که با یک شرط بود یعنی یک تکست باکس رو چک کنه کد کار میکرد ولی حالا که اونا رو اضافه کردم منظورم اون دو تا شرط دیگه هست که حالا دیگه کار نمیکنه؟؟

try
{

SqlConnection con = new SqlConnection();
con.ConnectionString = @"Data Source=.\SQLEXPRESS;AttachDbFilename=" + DataDirectory + ";Integrated Security=True;User Instance=True";
SqlCommand cmd = new SqlCommand();
cmd.CommandType = CommandType.Text;
cmd.Connection = con;
con.Open();

cmd.CommandText = "update student set groupname=@1,year=@2 where esm= '" + textBox1.Text + "' and year='" + textBox2.Text + "' and groupname= '" +textBox4.Text +"'";
cmd.Parameters.AddWithValue("@1", comboBox3.Text);
cmd.Parameters.AddWithValue("@2", comboBox1.Text);

cmd.ExecuteNonQuery();
con.Close();
MessageBox.Show("انتقال دانش آموز با موفقیت انجام شد", "New", MessageBoxButtons.OK, MessageBoxIcon.Information);


}
catch { }

:لبخند::لبخند:
این چه طرز کد نوشتنه این کاملا اشتباه

اون قسمت where لازم نیست برش دار همه رو با پارامتر ها بنویس

تقریبا این شکلی

SqlConnection con = new SqlConnection();
con.ConnectionString = @"Data Source=.\SQLEXPRESS;AttachDbFilename=" + DataDirectory + ";Integrated Security=True;User Instance=True";
SqlCommand cmd = new SqlCommand();
cmd.CommandType = CommandType.Text;
cmd.Connection = con;
con.Open();

cmd.CommandText = "update student set groupname=@1,year=@2 ,esm=@3 , year=@4, groupname=@5";
cmd.Parameters.AddWithValue("@1", comboBox3.Text);
cmd.Parameters.AddWithValue("@2", comboBox1.Text);
cmd.Parameters.AddWithValue("@3", textBox1.Text);
cmd.Parameters.AddWithValue("@4", textBox2.Text);
cmd.Parameters.AddWithValue("@5", textBox4.Text);
cmd.ExecuteNonQuery();
con.Close();
MessageBox.Show("انتقال دانش آموز با موفقیت انجام شد", "New", MessageBoxButtons.OK, MessageBoxIcon.Information);

09178525592
یک شنبه 06 مرداد 1392, 22:51 عصر
:لبخند::لبخند:

اون قسمت where لازم نیست برش دار همه رو با پارامتر ها بنویس

تقریبا این شکلی

SqlConnection con = new SqlConnection();
con.ConnectionString = @"Data Source=.\SQLEXPRESS;AttachDbFilename=" + DataDirectory + ";Integrated Security=True;User Instance=True";
SqlCommand cmd = new SqlCommand();
cmd.CommandType = CommandType.Text;
cmd.Connection = con;
con.Open();

cmd.CommandText = "update student set groupname=@1,year=@2 ,esm=@3 , year=@4, groupname=@5";
cmd.Parameters.AddWithValue("@1", comboBox3.Text);
cmd.Parameters.AddWithValue("@2", comboBox1.Text);
cmd.Parameters.AddWithValue("@3", textBox1.Text);
cmd.Parameters.AddWithValue("@4", textBox2.Text);
cmd.Parameters.AddWithValue("@5", textBox4.Text);
cmd.ExecuteNonQuery();
con.Close();
MessageBox.Show("انتقال دانش آموز با موفقیت انجام شد", "New", MessageBoxButtons.OK, MessageBoxIcon.Information);



دوست عزیز اینجوری که اصلا عمل نمیکنه اصلا نمیدونه کدوم فیلدی از بانک رو باید ویرایش کنه حداقل باید یه where باید نوشته بشه....؟؟؟

09178525592
یک شنبه 06 مرداد 1392, 22:52 عصر
معمولا خطارو میزارن نه کدو. لطفا خطارو بزارین

توضیح که دادم عزیزم .
وقتی روی باتون ویرایش میزنم پیغام موفقیت آمیز میده ولی ویرایشی انجام نشده.

khokhan
یک شنبه 06 مرداد 1392, 22:53 عصر
دوست عزیز اینجوری که اصلا عمل نمیکنه اصلا نمیدون کدوم فیلدی از بانک رو باید ویرایش کنه حداقل باید یه where نوشته بشه....؟؟؟مگه جدولت کلید نداره ؟؟؟؟؟؟؟؟؟؟؟:لبخند:

شما باید چیزی رو شرط بگذاری که همیشه ثابت باشه

cmd.CommandText = "update student set groupname=@1,year=@2 ,esm=@3 , year=@4, groupname=@5 where id=@ID";

09178525592
یک شنبه 06 مرداد 1392, 23:04 عصر
مگه جدولت کلید نداره ؟؟؟؟؟؟؟؟؟؟؟:لبخند:

شما باید چیزی رو شرط بگذاری که همیشه ثابت باشه

cmd.CommandText = "update student set groupname=@1,year=@2 ,esm=@3 , year=@4, groupname=@5 where id=@ID";


یه نگاه به تصویر زیر بندازید متوجه میشید .
در مرحله اول که دانش آموز انتخاب شده
2-حالا اطلاعاتش ریخته میشه تو تکست باکس
3-پس حالا باید توی کد ویرایش یه شرط بذاریم چون الان ثابته میخوایم اون دانش آموزی با اون اطلاعات داخل تکس باکس رو ویرایش کنه

108064

09178525592
یک شنبه 06 مرداد 1392, 23:20 عصر
دوستان مشکل حل شد دم همتون گرم.:تشویق: