Execute

ADO Execute metodi


❮ Connection obyektining to‘liq ma’lumotnomasi

Execute metodi ko‘rsatilgan so‘rov, SQL operatori, saqlangan protsedura yoki provayderga xos matnni bajaradi.

Agar so‘rov qatorlar qaytaradigan bo‘lsa, natijalar yangi Recordset obyektida saqlanadi. Agar so‘rov qatorlar qaytarmaydigan bo‘lsa, yopiq Recordset obyekti qaytariladi.

Eslatma: Qaytariladigan Recordset har doim faqat o‘qish uchun mo‘ljallangan va forward-only (faqat oldinga yuradigan) Recordset bo‘ladi!

Maslahat: Ko‘proq imkoniyatlarga ega Recordset yaratish uchun avval Recordset obyektini yarating. Kerakli xususiyatlarni o‘rnating, so‘ngra so‘rovni bajarish uchun Recordset obyektining Open metodidan foydalaning.

Qatorlar qaytaradigan so‘rov uchun sintaksis

Set objrs=objconn.Execute(commandtext,ra,options)

Qatorlar qaytarmaydigan so‘rov uchun sintaksis

objconn.Execute commandtext,ra,options

Parametr Tavsif
commandtext Majburiy. Bajariladigan SQL operatori, saqlangan protsedura yoki provayderga xos matn
ra Ixtiyoriy. So‘rov ta’sir qilgan yozuvlar soni
options Ixtiyoriy. Provayder commandtext parametrini qanday talqin qilishi kerakligini belgilaydi. Bir yoki bir nechta CommandTypeEnum yoki ExecuteOptionEnum qiymati bo‘lishi mumkin. Standart qiymati: adCmdUnspecified

Misol

<% sql="SELECT companyname FROM Customers" Set rs=conn.Execute(sql) %>

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   Buyruq asinxron bajarilishi kerakligini bildiradi. Bu qiymatni CommandTypeEnum’ning adCmdTableDirect qiymati bilan birlashtirib bo‘lmaydi.
adAsyncFetch   CacheSize xususiyatida ko‘rsatilgan dastlabki miqdordan keyin qolgan qatorlar asinxron olinishi kerakligini bildiradi.
adAsyncFetchNonBlocking   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   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   Buyruq bajarilishi natijalari oqim (stream) sifatida qaytarilishi kerakligini bildiradi. adExecuteStream’ni faqat Command obyektining Execute metodiga ixtiyoriy parametr sifatida uzatish mumkin.
adExecuteRecord   CommandText Record obyekti sifatida qaytarilishi kerak bo‘lgan bitta qatorni qaytaradigan buyruq yoki saqlangan protsedura ekanini bildiradi.

❮ Connection obyektining to‘liq ma’lumotnomasi

W3Schools Pathfinder

Yutuqlaringizni kuzating – bu bepul!