View Full Version : میخوام مثل Query Analyzer باشم!
MToloo
سه شنبه 15 شهریور 1384, 08:23 صبح
یک stored procedure خفن تو sql دارم. اگه با Query analyzer اجراش کنم 10 ثانیه طول میکشه ولی با AdoStoredProcedure دلفی 27 ثانیه!! چیکار کنم حالا؟
Rafeie
سه شنبه 15 شهریور 1384, 13:02 عصر
با عرض سلام .
از تابع Execute از شیء TADOConnection استفاده کنید .
شاید سریعتر بشه .
اگه نشد به صورت یک stored procedure در SQL Server درستش کنید و بعد اجراش کنید .
موفق باشید .
MToloo
سه شنبه 15 شهریور 1384, 18:02 عصر
stored procedure که هست ولی Adoconnection رو آزمایش میکنم. ممنون.
JavanSoft
چهارشنبه 16 شهریور 1384, 14:22 عصر
در SDAC یک خصوصیت بنام prepare هست که عملی که دوست عزیز رفیعی گفتند را بصورت اتوماتیک انجام می دهد . ولی در ADO نمی دانم
vcldeveloper
پنج شنبه 17 شهریور 1384, 02:54 صبح
در SDAC یک خصوصیت بنام prepare هست که عملی که دوست عزیز رفیعی گفتند را بصورت اتوماتیک انجام می دهد . ولی در ADO نمی دانم
در کامپوننت های ADO دلفی هم هست.
MToloo
پنج شنبه 17 شهریور 1384, 09:57 صبح
Prepared رو هم True کردم نشد.
ولی یک کشف دیگه. رو چند تا کامپیوتر دیگه آزمایش کردم این مشکل و نداشت رو بعضی از کامپیوترها اینجوریه! نمیدونم چه فرقی دارند. حالا میخوام نسخه Ado رو روی این کامپیوترها مقایسه کنم شاید از اون باشه.
JavanSoft
پنج شنبه 17 شهریور 1384, 14:02 عصر
استفاده از Prepare بصورت T/F نیست در SDAC دستور Prepare داریم
Query.Prepare;
While Not Prepared do ;
Query.execute
در واقع این کار باعث ایجاد SPمربوطه در SQL می گردد و بعد SP اجرا می شود
vcldeveloper
جمعه 18 شهریور 1384, 02:30 صبح
استفاده از Prepare بصورت T/F نیست در SDAC دستور Prepare داریم
در واقع این کار باعث ایجاد SPمربوطه در SQL می گردد و بعد SP اجرا می شود
خصوصیت Prepared در TADOCommand و TADOQuery هم دقیقا همین کار رو انجام میده، این خصوصیت یکی از خصوصیات خود ADO محسوب میشه و با True شدنش یک نسخه کامپایل شده از دستور SQL توسط فراهم کننده داده، برای اجراهای بعدی نگه داری میشه (شبیه یک Stored Procedure) و این کار باعث افزایش سرعت اجرای اون دستور میشه.
MToloo
شنبه 19 شهریور 1384, 20:26 عصر
خصوصیت Prepared در TADOCommand و TADOQuery هم دقیقا همین کار رو انجام میده، این خصوصیت یکی از خصوصیات خود ADO محسوب میشه و با True شدنش یک نسخه کامپایل شده از دستور SQL توسط فراهم کننده داده، برای اجراهای بعدی نگه داری میشه (شبیه یک Stored Procedure) و این کار باعث افزایش سرعت اجرای اون دستور میشه.
پس با این حساب TRUE کردن PREPARED برای STORED PROCEDURE چه تاثیری داره؟
vcldeveloper
دوشنبه 21 شهریور 1384, 05:56 صبح
پس با این حساب TRUE کردن PREPARED برای STORED PROCEDURE چه تاثیری داره؟
هیچی!
Prepared روی query هایی که به سرور می فرستید عمل میکنه، نه روی Stored Procedure .
MToloo
یک شنبه 03 مهر 1384, 04:47 صبح
نسخه Ado رو کامپیوترها مقایسه کردم. version فایلهای dll و که نگاه میکردم، روی اون کامپیوتر (که باهش مشکل دارم) 2.71 ولی روی کامپیوتر خودم 2.8 . حالا من چطوری میتونم اون ado ش و update کنم؟ هر کاری کردم نشد.
Babak-Aghili
جمعه 13 آبان 1384, 02:29 صبح
مطمئن نیستم ولی گمان کنم با آپدیت کردن MDAC امکان پذیر باشد .
Babak-Aghili
جمعه 13 آبان 1384, 02:43 صبح
در ضمن در رابطه با مبحثی که در این قسمت درجریان بود راجع به Prepared :
من در هلپ دلفی ، اینطور متوجه شدم که : ( در رابطه با ADO ) :
1- وقتی Prepared را True میکنیم ، باعث میشه که یک سری ریسورس روی سرور تخصیص داده بشه ، پارامترها آماده بشوند و ... و سپس مبادرت به انجام دستور میکنه
2- حتی اگر Prepared را بصورت دستی هم Trueنکنیم ، خودش بابت هربار ارتباط جدید با سرور ، این کار را انجام میدهد .
3- تفاوت روش 1 و 2 هم در این هست که در حالت اول ، اگر خیلی بهداشتی بخواهیم عمل کنیم ، در آخر کار بایستی که prepared را خودمان هم False کنیم که اون ریسورس ها را آزاد کند ... ولی در حالت دوم ، خودش با هربار که کانکت کرد ، یک بار هم fals ش میکنه ...
4 - توصیه شده بود که برای افزایش سرعت و غیره ، در صورتی که query مون ، به میزان زیاد و متناوب با سرور سروکار داره ، بصورت دستی prepared را true کنیم که عمل false کردنش هم دست خودمون باشه ...
5- همین دیگه ! تموم شد !
MToloo
شنبه 14 آبان 1384, 18:17 عصر
ببخشید MDAC چیه؟ چطوری آپدیت میشه؟
Babak-Aghili
شنبه 14 آبان 1384, 23:05 عصر
ببخشید MDAC چیه؟ چطوری آپدیت میشه؟
جدیدترین نسخه اش همیشه از سایت ماکروسافت ، قابل نصب و دریافت است.
بیشترش را ار عالیجنابان بپرس .. :بوس:
vBulletin® v4.2.5, Copyright ©2000-1404, Jelsoft Enterprises Ltd.