ExecuteComplete
ADO WillExecute va ExecuteComplete hodisalari
❮ Connection obyektining to‘liq ma’lumotnomasi
Hodisa — muayyan amal yuz bergandan keyin avtomatik ravishda chaqirilishi mumkin bo‘lgan subprotsedura.
- WillExecute hodisasi objcomm.Execute, objconn.Execute yoki objrs.Open chaqirilishidan bevosita oldin ishga tushishi mumkin.
- ExecuteComplete hodisasi objcomm.Execute, objconn.Execute, objrs.Open, objrs.Requery yoki objrs.NextRecordset chaqiruvi yakunlangandan keyin ishga tushishi mumkin.
Sintaksis
WillExecute src,cursortyp,locktyp,options,
status,objcomm,objrs,objconn
ExecuteComplete recaffected,objerror,status,
objcomm,objrs,objconn
| Parametr | Tavsif |
|---|---|
| src | SQL buyrug‘i yoki saqlangan protsedura nomini o‘z ichiga olgan string |
| cursortyp | Ishlatiladigan kursor turini belgilaydi. CursorTypeEnum qiymatlaridan biri |
| locktyp | Ishlatiladigan qulflash (lock) turini belgilaydi. LockTypeEnum qiymatlaridan biri |
| options | Bir yoki bir nechta CommandTypeEnum yoki ExecuteOptionEnum qiymatlari |
| recaffected | Bajarilish ta’sir qilgan yozuvlar soni |
| objerror | Yuz bergan xatolarni o‘z ichiga olgan Error obyekti Eslatma: Error obyekti yaratilishi uchun EventStatusEnum qiymati adStatusErrorsOccurred qilib o‘rnatilishi kerak |
| status | EventStatusEnum qiymati |
| objcomm | WillExecute uchun: bajarilgan Command obyektiga yoki Nothing qiymatiga o‘rnatiladi ExecuteComplete uchun: bajarilgan Command obyekti |
| objrs | WillExecute uchun: buyruq bajarilishi natijasida hosil bo‘lgan Recordset obyektiga yoki Nothing qiymatiga o‘rnatiladi ExecuteComplete uchun: bajarilgan buyruq natijasi bo‘lgan Recordset obyekti |
| objconn | Buyruqning bajarilishi bilan bog‘liq Connection obyekti |
CursorTypeEnum qiymatlari
Recordset obyektida ishlatiladigan kursor turini belgilaydi.
| Konstanta | Qiymat | Tavsif |
|---|---|---|
| adOpenUnspecified | -1 | Kursor turini ko‘rsatmaydi. |
| adOpenForwardOnly | 0 | Standart qiymat. Forward-only (faqat oldinga yuradigan) kursordan foydalanadi. Statik kursor bilan bir xil, faqat yozuvlar bo‘ylab faqat oldinga siljish mumkin. Recordset bo‘ylab faqat bir marta o‘tish kerak bo‘lganda bu unumdorlikni oshiradi. |
| adOpenKeyset | 1 | Keyset kursordan foydalanadi. Dinamik kursorga o‘xshaydi, faqat boshqa foydalanuvchilar qo‘shgan yozuvlarni ko‘ra olmaysiz, biroq boshqa foydalanuvchilar o‘chirgan yozuvlarga Recordset’ingizdan murojaat qilib bo‘lmaydi. Boshqa foydalanuvchilar kiritgan ma’lumot o‘zgarishlari baribir ko‘rinadi. |
| adOpenDynamic | 2 | Dinamik kursordan foydalanadi. Boshqa foydalanuvchilar qo‘shgan, o‘zgartirgan va o‘chirgan yozuvlar ko‘rinadi hamda Recordset bo‘ylab harakatlanishning barcha turlariga ruxsat beriladi; provayder xatcho‘plarni (bookmarks) qo‘llab-quvvatlamasa, ular bundan mustasno. |
| adOpenStatic | 3 | Statik kursordan foydalanadi. Bu ma’lumotlarni topish yoki hisobotlar tuzish uchun foydalanishingiz mumkin bo‘lgan yozuvlar to‘plamining statik nusxasi. Boshqa foydalanuvchilar qo‘shgan, o‘zgartirgan yoki o‘chirgan yozuvlar ko‘rinmaydi. |
LockTypeEnum qiymatlari
| Konstanta | Qiymat | Tavsif |
|---|---|---|
| adLockUnspecified | -1 | Qulflash turini ko‘rsatmaydi. Klonlar uchun klon asl nusxa bilan bir xil qulflash turida yaratiladi. |
| adLockReadOnly | 1 | Faqat o‘qish uchun mo‘ljallangan yozuvlarni bildiradi. Ma’lumotlarni o‘zgartirib bo‘lmaydi. |
| adLockPessimistic | 2 | Yozuvma-yozuv pessimistik qulflashni bildiradi. Provayder yozuvlarni muvaffaqiyatli tahrirlashni ta’minlash uchun zarur choralarni ko‘radi, odatda tahrirlashdan so‘ng darhol ma’lumotlar manbaidagi yozuvlarni qulflaydi. |
| adLockOptimistic | 3 | Yozuvma-yozuv optimistik qulflashni bildiradi. Provayder optimistik qulflashdan foydalanadi, ya’ni yozuvlarni faqat Update metodini chaqirganingizda qulflaydi. |
| adLockBatchOptimistic | 4 | Optimistik paketli yangilashlarni bildiradi. Paketli yangilash rejimi uchun zarur. |
CommandTypeEnum qiymatlari
| Konstanta | Qiymat | Tavsif |
|---|---|---|
| adCmdUnspecified | -1 | Buyruq tipi argumentini ko‘rsatmaydi. |
| adCmdText | 1 | CommandText’ni buyruqning yoki saqlangan protsedura chaqiruvining matnli ta’rifi sifatida talqin qiladi. |
| adCmdTable | 2 | CommandText’ni barcha ustunlari ichki hosil qilingan SQL so‘rovi orqali qaytariladigan jadval nomi sifatida talqin qiladi. |
| adCmdStoredProc | 4 | CommandText’ni saqlangan protsedura nomi sifatida talqin qiladi. |
| adCmdUnknown | 8 | CommandText xususiyatidagi buyruq tipi noma’lumligini bildiradi. |
| adCmdFile | 256 | CommandText’ni doimiy saqlangan Recordset’ning fayl nomi sifatida talqin qiladi. Faqat Recordset.Open yoki Requery bilan ishlatiladi. |
| adCmdTableDirect | 512 | CommandText’ni barcha ustunlari qaytariladigan jadval nomi sifatida talqin qiladi. Faqat Recordset.Open yoki Requery bilan ishlatiladi. Seek metodidan foydalanish uchun Recordset adCmdTableDirect bilan ochilishi kerak. Bu qiymatni ExecuteOptionEnum’ning adAsyncExecute qiymati bilan birlashtirib bo‘lmaydi. |
ExecuteOptionEnum qiymatlari
| Konstanta | Qiymat | Tavsif |
|---|---|---|
| adOptionUnspecified | -1 | Buyruq ko‘rsatilmaganligini bildiradi. |
| adAsyncExecute | 16 | Buyruq asinxron bajarilishi kerakligini bildiradi. Bu qiymatni CommandTypeEnum’ning adCmdTableDirect qiymati bilan birlashtirib bo‘lmaydi. |
| adAsyncFetch | 32 | CacheSize xususiyatida ko‘rsatilgan dastlabki miqdordan keyin qolgan qatorlar asinxron olinishi kerakligini bildiradi. |
| adAsyncFetchNonBlocking | 64 | Ma’lumotlarni olish paytida asosiy oqim (main thread) hech qachon bloklanmasligini bildiradi. Agar so‘ralgan qator hali olinmagan bo‘lsa, joriy qator avtomatik ravishda fayl oxiriga siljiydi. Agar Recordset’ni doimiy saqlangan Recordset’ni o‘z ichiga olgan Stream’dan ochsangiz, adAsyncFetchNonBlocking ta’sir qilmaydi: amal sinxron va bloklovchi bo‘ladi. Recordset’ni ochish uchun adCmdTableDirect parametri ishlatilganda adAsynchFetchNonBlocking hech qanday ta’sir qilmaydi. |
| adExecuteNoRecords | 128 | Buyruq matni qatorlar qaytarmaydigan buyruq yoki saqlangan protsedura ekanini bildiradi (masalan, faqat ma’lumot qo‘shadigan buyruq). Agar biror qator olinsa, u tashlab yuboriladi va qaytarilmaydi. adExecuteNoRecords’ni faqat Command yoki Connection obyektining Execute metodiga ixtiyoriy parametr sifatida uzatish mumkin. |
| adExecuteStream | 256 | Buyruq bajarilishi natijalari oqim (stream) sifatida qaytarilishi kerakligini bildiradi. adExecuteStream’ni faqat Command obyektining Execute metodiga ixtiyoriy parametr sifatida uzatish mumkin. |
| adExecuteRecord | 512 | CommandText Record obyekti sifatida qaytarilishi kerak bo‘lgan bitta qatorni qaytaradigan buyruq yoki saqlangan protsedura ekanini bildiradi. |
EventStatusEnum qiymatlari
| Konstanta | Qiymat | Tavsif |
|---|---|---|
| adStatusOK | 1 | Hodisani ishga tushirgan amal muvaffaqiyatli bajarildi |
| adStatusErrorsOccurred | 2 | Hodisani ishga tushirgan amal muvaffaqiyatsiz tugadi |
| adStatusCantDeny | 3 | Kutilayotgan amalni bekor qilib bo‘lmaydi |
| adStatusCancel | 4 | Hodisani ishga tushirgan amalni bekor qiladi |
| adStatusUnwantedEvent | 5 | Hodisa metodi bajarilishini tugatmaguncha keyingi bildirishnomalarning oldini oladi |
❮ Connection obyektining to‘liq ma’lumotnomasi
W3Schools Pathfinder
Yutuqlaringizni kuzating – bu bepul!
