PDA

View Full Version : سوال: مشکل در اپدیت جداول



hamidtmu
چهارشنبه 05 دی 1397, 19:12 عصر
سلام دوستان یک سوال ساده و سخت برای من
سرچ زدم و کلی اطلاعات گرفتم میخاستم ولی در اپدیت به مشکل برخوردم
من وقته نرم افزارمو روی سیستم دیگه نصب می کنم اطلاعات را با فارسی وارد اس کیو ال می کنه ولی روی ویرایش مشکل دارم . وقتی ویرایش می کنم جدولو علامت سوال میشن

private void button3_Click(object sender, EventArgs e)
{
try
{
cmd.Parameters.Clear();
cmd.Connection = con;
cmd.CommandText = "Update tip set name='" + nametxt.Text+ "',nameKH='" + nameKHtxt.Text + "',kodM='" + kodM.Text + "' ,tamas='" + tamas.Text + "',jens='" + jens.Text + "' where id=" + Convert.ToInt32(dgvtip.SelectedCells[0].Value);
con.Open();
cmd.ExecuteNonQuery();
con.Close();
Display();
MessageBox.Show("?????? ????? ????? ??");
//******************************

nameKHtxt.Text = "";
kodM.Text = "";
tamas.Text = "";


}

catch (Exception)
{
MessageBox.Show("????? ??? ???? ???");
}
}


این ان بزرگ که باید قبل از ولیو بزارم را چجوری توی این کد بزارم
در ضمن بانکم اس کیو ال اکسپرس هست. زبانشم روی پرشین گزاشتم
فیلد ها هم ان وچار هست
-------
اگه نکته ای هم هست که باید رعایت کنم بفرمایید ممنون میشم

Mahmoud.Afrad
چهارشنبه 05 دی 1397, 20:53 عصر
http://barnamenevis.org/showthread.php?450080-%D8%B0%D8%AE%DB%8C%D8%B1%D9%87-%D8%B9%D9%84%D8%A7%D9%85%D8%AA-%D8%B3%D9%88%D8%A7%D9%84-%D8%AF%D8%B1-%D8%A8%D8%A7%D9%86%DA%A9-%D8%A8%D9%87-%D8%AC%D8%A7%DB%8C-%D8%AD%D8%B1%D9%88%D9%81-%D9%81%D8%A7%D8%B1%D8%B3%DB%8C&p=2305704&viewfull=1#post2305704

hamidtmu
چهارشنبه 05 دی 1397, 21:17 عصر
تشکر دوست عزیز.

hamidtmu
پنج شنبه 06 دی 1397, 18:03 عصر
try
{
string command = "update tip set name=@name where idtip=@ID";
SqlCommand com = new SqlCommand(command, con);
com.Parameters.AddWithValue("name", nametxt.Text);
com.ExecuteNonQuery();
Display();
MessageBox.Show("?????? ????? ????? ??");
//******************************
nameKHtxt.Text = "";
kodM.Text = "";
tamas.Text = "";

}
catch (Exception)
{
MessageBox.Show("????? ??? ???? ???");
}
}


من کدم را به صورت بالا ویرایش کردم ولی الان دیگه اپ دیت هم نمیشه
میشه راهنمایی بفرمایید واقعا گیرم
نکته 1: ID نام ایدیم هست
نکته 2:tip اسم جدولم هست
نکته سه اینکه ترتیب قرار گرفتم متغیر هام هم مطمئنم اشتباست. لطفا هر چه اشتباه کد بالا داره را اصلاح بفرمایید
====
و یه سوال هم اینکه واقعا با این کد دیگه مشکل علامت سوال برطرف میشه در هنگام اپ دیت جدول؟

Mahmoud.Afrad
پنج شنبه 06 دی 1397, 18:44 عصر
دو تا پارامتر (@name , @id) باید مقداردهی بشن.

hamidtmu
پنج شنبه 06 دی 1397, 19:08 عصر
خواهشا یکم ساده تر

hamidtmu
پنج شنبه 06 دی 1397, 19:10 عصر
خواهشا یکم ساده تر بیان کنید

Mahmoud.Afrad
پنج شنبه 06 دی 1397, 19:45 عصر
منظورم خطی هست که پارامتر را تعریف کردید. اسم پارامتر را اصلاح کنید
com.Parameters.AddWithValue("@name", nametxt.Text);
یک خط مشابه همین برای پارامتر @id باید تعریف کنید.

hamidtmu
پنج شنبه 06 دی 1397, 20:01 عصر
من برای ای دی تکست باکس ندارم.اتومات میزنه باید چیکلر کرد؟

Mahmoud.Afrad
پنج شنبه 06 دی 1397, 20:22 عصر
من برای ای دی تکست باکس ندارم.اتومات میزنه باید چیکلر کرد؟

آیدی در شرط هست که مشخص بشه چه سطری آپدیت بشه. طبق پست اول مقدارش رو از سطر دیتاگرید مقداردهی کنید.

hamidtmu
پنج شنبه 06 دی 1397, 20:36 عصر
مثل خط اول نوشتمش به نظرتون درسته؟
اگه یه فیلد دیگه نام2 را به سطر اول اضافه کنم به صورت زیر درسته؟


try
{
string command = "update tip set name=@name,name2=@name2 where id=" + Convert.ToInt32(dgvtip.SelectedCells[0].Value";
SqlCommand com = new SqlCommand(command, con);
com.Parameters.AddWithValue("@name", nametxt.Text);
com.Parameters.AddWithValue("@name2", name2txt.Text);
com.ExecuteNonQuery();
Display();
MessageBox.Show("?????? ????? ????? ??");
//******************************
nameKHtxt.Text = "";
kodM.Text = "";
tamas.Text = "";
}
catch (Exception)
{
MessageBox.Show("????? ??? ???? ???");
}