مشکل با ویرایش بانک اطلاعاتی sql server
سلام
من برای ویرایش اطلاعات یک سری مشترک از این کد استفاده می کنم اما هیچ اتفاقی رخ نمیده !!!!
SqlConnection conn = new SqlConnection();
conn.ConnectionString = @"Data Source=MOSTAFA-PC;Initial Catalog=AjansDB;Integrated Security=True";
conn.Open();
SqlCommand cmd = new SqlCommand();
cmd.Connection = conn;
string sql = "update Moshtarekin set name1 = '" + txtName.Text + "'," + "cat='" + txtCat.Text + "',tel1='" + txtTel1.Text + "',tel2='" + txtTel2.Text + "',tel3='" + txtTel3.Text + "',mobile='" + txtMobile.Text + "',address1='" + txtAddress1.Text + "',address2='" + txtAddress2.Text + "'where id = '" + frm1.id + "'";
cmd.CommandText = sql;
cmd.ExecuteNonQuery();
نقل قول: مشکل با ویرایش بانک اطلاعاتی sql server
name1 = '" + txtName.Text + "'," + "cat='"
دستور + رو وردارد چرا باید دو ستون با هم جمع شن؟!!!!
چنین کاری اصولا و اساسا اشتاباه
نقل قول: مشکل با ویرایش بانک اطلاعاتی sql server
نقل قول:
نوشته شده توسط
h-rafiee
name1 = '" + txtName.Text + "'," + "cat='"
دستور + رو وردارد چرا باید دو ستون با هم جمع شن؟!!!!
چنین کاری اصولا و اساسا اشتاباه
متوجه نمیشم یعنی نباید از + استفاده کرد ؟؟؟؟
نقل قول: مشکل با ویرایش بانک اطلاعاتی sql server
نقل قول:
دستور + رو وردارد چرا باید دو ستون با هم جمع شن؟!!!!
چنین کاری اصولا و اساسا اشتاباه
ستون ها رو جمع نمی کنه! رشته ها رو به هم می چسبونه
شکل دستوراتت درسته!
اگه error میده قبل where یه فاصله خالی بذار
اگه از string.format استفاده کنی خواناتره
چک کن ببین آیدی که داری پاس میدی توی جدولت وجود داره
موفق باشی
نقل قول: مشکل با ویرایش بانک اطلاعاتی sql server
شما روی این دستورcmd.ExecuteNonQuery(); یه breaak point بذار و قبل از اینکه از برنامه اجراش کنی cmd.commandtext رو از watch بگیر و ببر تو Sql اجرا کن ببین اونجا چی میشه ؟ اصلا کار میکنه یا نه؟ چجون اگه error داشته باشه اونجا بیشتر توضیح میده
نقل قول: مشکل با ویرایش بانک اطلاعاتی sql server
نقل قول:
نوشته شده توسط
iradata
متوجه نمیشم یعنی نباید از + استفاده کرد ؟؟؟؟
نگاه قبل از دستور cat یک + وجود داره که وجود اون در چنین نوشتاری صحیح نیست و حاوی ارور میشه بقیه خط دستورت درسته
نقل قول: مشکل با ویرایش بانک اطلاعاتی sql server
دوست عزیز اون + دو تا رشته رو با هم concat میکنه و Error نداره! به نظر شما از نظر VS، این دو تا فرقی دارن؟
string s;
s = "a" + "b";
و
string s;
s = "ab";
نقل قول: مشکل با ویرایش بانک اطلاعاتی sql server
نقل قول:
نوشته شده توسط
shadi khanum
دوست عزیز اون + دو تا رشته رو با هم concat میکنه و Error نداره! به نظر شما از نظر VS، این دو تا فرقی دارن؟
string s;
s = "a" + "b";
و
string s;
s = "ab";
دوست عزیز این موردی که شما می گویید کاملا درست است اما ما درباره ی بانک داریم صحبت می کنیم و بانک ستون هایی دارد. در اینجا ستون Cat اگه اشتباه نکنم با Name در Name می نویسه که چنین خطی اررور میده به همین سادگی
نقل قول: مشکل با ویرایش بانک اطلاعاتی sql server
نقل قول:
نوشته شده توسط
h-rafiee
دوست عزیز این موردی که شما می گویید کاملا درست است اما ما درباره ی بانک داریم صحبت می کنیم و بانک ستون هایی دارد. در اینجا ستون Cat اگه اشتباه نکنم با Name در Name می نویسه که چنین خطی اررور میده به همین سادگی
ببین این ربطی به بانک نداره! صرفا داره از ترکیب یه سری String یه String دیگه میسازه، چه ربطی به بانک داره؟! ببین شما واسه اینکه مطمئن شی یه پروژه new کن و همین دو خط رو توش بنویس. ببین خروجیت چی میشه!؟
string m = "test";
string sql = "update Moshtarekin set name1 = '" + m +
"'," + "cat='" + m + "',tel1='" + m +
"',tel2='" + m + "',tel3='" + m +
"',mobile='" + m + "',address1='" +
m + "',address2='" + m +
"'where id = '" + m + "'";
دیدی فرقی نداره؟!
نقل قول: مشکل با ویرایش بانک اطلاعاتی sql server
احتمالا مشکل این دوستمون اینه که کلا اون شرط where که نوشته مشکل داره، یعنی رکوردی با اون مشخصات اصلا نیست که بخواد update کنه.
نقل قول: مشکل با ویرایش بانک اطلاعاتی sql server
بگذریم ایشاالله خوده دوستمون به جوابشون رسیده باشن و اینجا جای بحث نیست که ما کل کلی داشته باشیم یا نه.
در کل فرمودم.
در این دستوری که شما فرمودید
یعنی محتویات ستون Name شامل:
محتویات تکست باکس Cat= محتویات تکست باکس دگر
(درحالی که ویرگول قبل از + دستور را ناقض می کنه)
اما بنده منظورم اینه که محتویات ستون Name:
محتویات تکست باکس
و محتویات ستون Cat شامل:
محتویات تکس باکس دگر
(لازمه اش برداشتن "+" می باشد)
حال از آنجا که دستورات SQL دستورات رشته ای هستند اینکه Cat یک ستون باشد تا رشته بسته به جدول فرد دارد و گفته ی هردو درست است.
اصلا نه مال شما درست تر بر روی چشم