PDA

View Full Version : کار نکردن دستور UPDATE



seven7777777
دوشنبه 07 اردیبهشت 1388, 10:56 صبح
دوستان خوبم سلام

من تو برنامم دیتابیسمو Attach کردم . دستورات Insert و Select هم به خوبی کار می کنه اما دستور Update من کار نمی کنه . در ضمن هیچ اروری نمی ده و تازه درست کار کردن رو هم با مقدار خروجی ExecuteNonQuery نشون میده اما وقتیدوباره میام تو برنامه همون مقادیر قبلی سرجاشه !!!

مشکل از کجاست ؟؟؟

bahar_engineer
دوشنبه 07 اردیبهشت 1388, 11:36 صبح
باید قابلیت تغییر رو true کنید. نمی دونم کجاست اما توی صفحات وب یه دستور باید بنویسیم که update انجام بشه! validateRequest="false"
اگه این دستور و نمی نوشتیم آپدیت به درستی انجام نمی شد.

alihassanabadi
دوشنبه 07 اردیبهشت 1388, 11:43 صبح
سلام

شما نمیخاد sql رو با کد باز کنی در ضمن از ExecuteNonQuery هم استفاده نکن
کد زیر رو بنویس ببین کار میکنه اگه میشه کدت رو بزار

SqlDataAdapter ad = newSqlDataAdapter("update tblname set fieldname='value', connectionstring);
DataSet ds = newDataSet();
ad.Fill(ds);
با تشکر

seven7777777
دوشنبه 07 اردیبهشت 1388, 14:38 عصر
راستی من شک کردم و رفتم دوباره تست کردم . Insert و Delete هم کار نمی کنند . فقط Select کار می کنه .
مثل این شده که داره اطلاعات رو از یک DataBase دیگه می گیره .
منقبلا همین برنامه رو بصورت Setup هم ساخته بودم و الان در سیستمم هست و کار می کنه اما نمی دونم چرا دوباره که اومدم سراغ نسخه اولیه اینجوریه در حالی که Setup شدهه درست کار می کنه !!!

mohsen_csharp
دوشنبه 07 اردیبهشت 1388, 16:07 عصر
شما چون فایل SQL را به پروژه Attach کردی به هنگام اجرای پروژه با ویژوال استادیو ، یک نسخه از این فایل SQL به پوشه Debug کپی میشه و تمام عملیات Delete و .. به درستی انجام میشه .
بعد که برنامه رو ببندی و دوباره اجرا کنی دوباره یک نسخه از این فایل Attach شده به پوشه Debug اضافه میشه و فایل قبلی رو پاک میکنه و شما تصور می کنید که دستورات شما مشکل دارند در حالی که دستورات شما به درستی اجرا میشن.
برای رفع این حالت شما میتونی از این فایل SQL یک properties بگیری و گزینه خاصیت copy to output Directory آن را برابر با Dont Copy قرار بدی و بعد پروژه رو اجرا کن .
برای بار اول اگه ارور داد خودت به طور دستی این فایل رو به پوشه Debug کپی کن. از این به بعد دیگه مشکلی نداره.
ولی حواست باشه هنگام درست کردن Setup این گزینه رو به حالت اول برگردونی تا به setup اضافه بشه و یا می تونی اونو دستی به Setup اضافه کنی.