ورود

View Full Version : اجرای کوئری ها در ADODC



ali190
سه شنبه 13 مهر 1389, 21:35 عصر
باسلام و عرض خسته نباشید
در نمونه زیر برای حذف اطلاعات پشت دکمه حذف کد زیر رو قرار دادم :

Adodc1.Recordset.Open "DELETE * FROM afrad;"
ولی متاسفانه ارور زیر را میدهد:


http://barnamenevis.org/forum/attachment.php?attachmentid=57787&stc=1&d=1286303280


لطفاً راهنمایی بفرمائید
ممنون
یاعلی

shoeyb1990
چهارشنبه 14 مهر 1389, 22:32 عصر
باسلام و عرض خسته نباشید
در نمونه زیر برای حذف اطلاعات پشت دکمه حذف کد زیر رو قرار دادم :

Adodc1.Recordset.Open "DELETE * FROM afrad;"ولی متاسفانه ارور زیر را میدهد:


دوست عزیز دستورات SQL رو تو RecordSource بنویس

Adodc1.RecordSource = "delete * from Afrad"

ali190
پنج شنبه 15 مهر 1389, 10:17 صبح
سلام
ممنون از پاسختون
در راستای مشکلم دو سئوال دیگر هم داشتم:
1)

دوست عزیز دستورات SQL رو تو RecordSource بنویس

Adodc1.RecordSource = "delete * from Afrad"
بعد از اجرای دستور پیغام زیر به نمایش در می آید:

http://barnamenevis.org/forum/attachment.php?attachmentid=57880&stc=1&d=1286435280

2) در نمونه پیوستی (http://barnamenevis.org/forum/attachment.php?attachmentid=57879&stc=1&d=1286435280)برای اجرای کوئری مورد نظر (delete query) از رکوردست استفاده شده

adodc1.Recordset.Open "Delete * From m;"
ولی در پروژه خودم زمانیکه میخوام اجرای کوئری رو به رکوردستم نسبت بدم خطا میگیره
میشه راهنمایی بفرمائید
ممنون
یاعلی

xxxxx_xxxxx
شنبه 17 مهر 1389, 01:53 صبح
سلام،
کلاً برای برخی دستورات SQL مثل Delete و Insert (و فکر کنم Update) نمی تونید از متود Recordsource استفاده کنید.
برای این دستورات باید از همون متود Open در شئ Recordset استفاده کرد. حالا مگه Open چه اشکالی داره؟



ولی در پروژه خودم زمانیکه میخوام اجرای کوئری رو به رکوردستم نسبت بدم خطا میگیره
اگر در رویداد Load، ابزار Adodc رو روی adcmdTable قرار ندید و از طریق دستور Select جدول afrad رو نمایش بدید این اتفاق نمیوفته.

من توصیه می کنم بی خیال Adodc بشید و از Adodb استفاده کنید. هم ساده تر هست، هم سریع تر، و هم ارزان تر.