PDA

View Full Version : progress برای دستورات SQL



کیوان معینی
شنبه 15 دی 1386, 17:25 عصر
با سلام
یه سوال از دوستانی که با SQLServer 2005 آشنایی کامل دارند ،
آیا امکان ایجاد یک Progress از روند درحال اجرا یک SQL - Select,Update,Delete و Cancel کردن اون در این نسخه وجود داره ؟!

ممنونم

کیوان معینی
یک شنبه 16 دی 1386, 00:22 صبح
آیا همچین نتیجه ای میشه گرفت ؟!

Omid Rekabsaz
یک شنبه 16 دی 1386, 11:45 صبح
من تا حالا به این مورد برخورد نکردم و بعید می دونم موجود باشه!
حتی خود ابزار management studio این امکان رو نداره!

کیوان معینی
یک شنبه 16 دی 1386, 11:47 صبح
ممنون از توجه شما دوست عزیز:
ولی باید بگم که وقتی تو محیط کریستال ریپورت داری یه گزارش رو load میکنی ، تعداد رکوردهای Fetch شده رو نشون میده و قابلیت Cancel شدن هم داره ، پس باید امکانش باشه !

این موضوع خیلی به حرفه ای شدن یه نرم افزار کمک میکنه ،
کسی نیست روی این موضوع بحث کنه ؟!

Omid Rekabsaz
یک شنبه 16 دی 1386, 13:07 عصر
بحث نمایش فکر می کنم خیلی متفاوت باشه با عملیاتی مثل update، delete و ... . حتی توی ابزار crystal Report هم احتمالا بعد از دریافت اطلاعات و در زمان پردازش جهت نمایش ProgressBar وجود دارد.

کیوان معینی
یک شنبه 16 دی 1386, 14:27 عصر
به نظر شما چرا کریستال یه بار اطلاعات کامل لود کنه ، بعد بیاد برای نمایش اونا Progress بزاره ؟!
(با دانستن این موضوع که ، محاسباتی روی رکوردها انجام نمیده)


یه اشتباه کوچیک چاپی سایت :

Omid Rekabsaz
یک شنبه 16 دی 1386, 14:55 عصر
نمایش یک باند نیاز به پردازش داره و به نظر من اون ProgressBar برای این پردازش در نظر گرفته شده است و نه fetch کردن رکوردها از SQL Server

کیوان معینی
دوشنبه 17 دی 1386, 02:26 صبح
ممنون از حوصله شما

میشه واضح تر بگین ، منظورتون از باند چیه ؟

AminSobati
دوشنبه 17 دی 1386, 11:19 صبح
دوست عزیزم،
بعضی از دستورات در SQL Server چنین چیزی رو پشتیبانی میکنند مثلا:
backup database MyDB to disk='c:\mydb.bak' with stats=10
در Management Studio شما درصد پیشرفت کار رو ملاحظه میکنید و در DMO این امکان وجود داره که این Progress مثل Event به شما داده بشه تا یک Progress Bar رو حرکت بدین.
اما بعضی از دستورات مثل Select به خاطر نحوه انجامش که کاملا با backup متفاوت هست، چنین امکانی به شما نمیده.
در نرم افزارهایی مثل Crystal Report که عنوان کردین، کار به شکل دیگه ای انجام میشه. فرضا اطلاعات در یک جدول موقتی Cache میشه و الان که مشخص شده چند رکورد وجود داره، میشه در چند قسمت اطلاعات رو واکشی کرد لذا Progress هم کار سختی نخواهد بود. یا شاید در سمت کلاینت این Caching انجام بشه.
این لینک رو هم ببینید:
http://www.aspfaq.com/show.asp?id=2120

mdrd
سه شنبه 18 دی 1386, 14:12 عصر
به نظر میاد این کار در خود management studio امکان پذیر نباشه! ولی اگر از application های دیگری استفاده میکنی و اونارو با ADO.net به sql server وصل کردی سایت زیر روشی رو گفته ولی خودم امتحانش نکردم ممکنه کمکت کنه

http://dotnetslackers.com/ADO_NET/re-7364_How_to_show_a_Progress_Bar_in_ADO_NET.aspx