PDA

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



sobaisobai
سه شنبه 15 شهریور 1390, 16:37 عصر
rwd.Connection = cs2.getConn();
string Update = "Update Users set Password='" + textBox1.Text +"' where UserName ='" +textBox2.Text + "'";
rwd.CommandText = Update;
rwd.ExecuteNonQuery();
MessageBox.Show("اطلاعات با موفقیت به روز رسانی شد", "Successful", MessageBoxButtons.OK, MessageBoxIcon.Information);


error : Syntax error in UPDATE statement

مشکل چیست؟ لطفا راهنمایی کنید ممنون

computer _ student
سه شنبه 15 شهریور 1390, 19:52 عصر
زماني كه از دستور ExecuteNonQuery استفاده مي كنيد حتما بايد قبل از اين دستور كانكشن بانك را open كنيد
البته شايد در كد هاي قبل از اين قطعه كد اين كار را كرده باشيد كه در اين صورت مشكل از اين نيست
اما معمولا قبل و بعد دستور .ExecuteNonQuery بانك را باز و بسته مي كنند.
راستي دقت كنيد كه چند دستور open را پشت سر هم ننويسيد چون خودش باعث به وجود آمدن اررور هاي ديگر مي شود.

sobaisobai
سه شنبه 15 شهریور 1390, 20:23 عصر
تو دستور زیر کانکشن باز میشه

rwd.Connection = cs2.getConn();
ولی ارور میده

computer _ student
پنج شنبه 17 شهریور 1390, 19:15 عصر
اگه اين دستور بانك را باز ميكنه پس مشكلي نيست
من راجع بع اين دستور چيزي نمي دونم. ميشه بيشتر برام توضيح بديد؟ getconn
پس به احتمال زياد خود دستور آپديت مشكل داره
يك بار ديگه چكش كنيد
ببينيد text ها را به طور مناسب بين دستور قرار داديد يا نه
چرا از پارامتر استفاده نكرديد. البته نمي دونم كدام راه بهتر است.
string Update = "Update Users set Password=@pass where UserName=@user";
rwd.CommandText = Update;
rwd.parameters.addwithvalue("@pass",textbox1.text)
rwd.parameters.addwithvalue("@user",textbox2.text)