PDA

View Full Version : مشکل در Update کردن



mahdishojaee
جمعه 25 خرداد 1386, 22:11 عصر
چطور می تونم چند رکورد را که در یکی از جدول های دیتاست پاک یا ویرایش شده را همزمان به روز کنم؟

مهدی رحیم زاده
جمعه 25 خرداد 1386, 22:34 عصر
دوست عزیز تو قسمت « نمونه برنامه های C#.NET » یه نمونه برنامه هست ...
اونو نگاه کن اگر جوابتو گرفتی که هیچی ، اگرنه بگو برات یه نمونه برنامه بزارم ....

mahdishojaee
جمعه 25 خرداد 1386, 22:48 عصر
من اونجا رو نگاه کردم.اون به درد من نمی خوره . من میخوام که تغییراتی که در دیتاست دادم را یکجا به روز کنم.من الان در حالت عادی یکبار دستور SQL رو اجرا میکنم سپس دیتاست رو دوباره پر میکنم تا مقادیر فیلدهای AutoNumber نیز وارد دیتاست بشوند.فکر می کنم این راه استانداردی نباشه اگه ممکنه تو این زمینه ها کمکم کنید.

mehdi.mousavi
چهارشنبه 30 خرداد 1386, 18:59 عصر
من اونجا رو نگاه کردم.اون به درد من نمی خوره . من میخوام که تغییراتی که در دیتاست دادم را یکجا به روز کنم.من الان در حالت عادی یکبار دستور SQL رو اجرا میکنم سپس دیتاست رو دوباره پر میکنم تا مقادیر فیلدهای AutoNumber نیز وارد دیتاست بشوند.فکر می کنم این راه استانداردی نباشه اگه ممکنه تو این زمینه ها کمکم کنید.

سلام
درست فکر کردید. تعداد Round Trip ها بین Client و Server بسیار مهم هستش. هر چی این رفت و بازگشت کمتر باشه سرعت برنامه بیشتره. برای این کار میتونید یه TableAdapter nv در DataSet خودتون بسازید، سپس گزینه "Refresh the data table" رو روشن کنید. بقیه کار هم مشخصه. به این ترتیب با روشن کردن این گزینه دارید به VS میگید که یک فرمان SELECT در انتهای دستور UPDATE/INSERT شما اضافه کنه، تا مقادیر Identity از RDBMS گرفته بشن. برای گرفتن تغییرات از DataSet هم میتونید از متود GetChanges استفاده کنید. به این ترتیب فقط رکوردهایی که تغییر کرده اند رو گرفته و Update می کنید.

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