Open

ADO Open metodi


❮ Recordset obyektining to‘liq ma’lumotnomasi

Open metodi jadvaldagi yozuvlarga, so‘rov natijalariga yoki saqlangan Recordset’ga kirish imkonini beruvchi ma’lumotlar bazasi elementini ochadi.

Maslahat: Tizim resurslarini bo‘shatish uchun Recordset obyektidan foydalanib bo‘lgach, uni har doim yoping. Recordset obyektini xotiradan butunlay o‘chirish uchun unga Nothing qiymatini bering.

Sintaksis

objRecordset.Open source,actconn,cursortyp,locktyp,opt

Parametr Tavsif
source Ixtiyoriy. Ma’lumotlar manbaini belgilaydi. source parametri quyidagilardan biri bo‘lishi mumkin:
  • URL manzil
  • Nisbiy/to‘liq fayl yo‘li nomi
  • Command obyekti
  • SQL operatori (so‘rovi)
  • Saqlangan protsedura
  • Jadval nomi
actconn Ixtiyoriy. Ulanish stringi yoki Connection obyekti
cursortyp Ixtiyoriy. Recordset obyektini ochishda ishlatiladigan kursor turini belgilovchi CursorTypeEnum qiymati. Standart qiymati: adOpenForwardOnly
locktyp Ixtiyoriy. Recordset obyektidagi qulflash turini belgilovchi LockTypeEnum qiymati. Standart qiymati: adLockReadOnly
opt Ixtiyoriy. source parametri Command obyekti bo‘lmasa, uni qanday talqin qilishni belgilaydi. Bir yoki bir nechta CommandTypeEnum yoki ExecuteOptionEnum qiymatlari bo‘lishi mumkin.

Misol

Open an ADO Table Recordset: <% set conn=Server.CreateObject("ADODB.Connection") conn.Provider="Microsoft.Jet.OLEDB.4.0" conn.Open "c:/webdata/northwind.mdb" set rs = Server.CreateObject("ADODB.recordset") rs.Open "Customers", conn %> Open an ADO SQL Recordset: <% set conn=Server.CreateObject("ADODB.Connection") conn.Provider="Microsoft.Jet.OLEDB.4.0" conn.Open "c:/webdata/northwind.mdb" set rs = Server.CreateObject("ADODB.recordset") rs.Open "Select * from Customers", conn %>

CursorTypeEnum qiymatlari

Konstanta Qiymat Tavsif
adOpenUnspecified -1 Kursor turi ko‘rsatilmagan
adOpenForwardOnly 0 Standart qiymat. Faqat oldinga harakatlanadigan (forward-only) kursor. Recordset bo‘ylab faqat bir marta o‘tish kerak bo‘lganda unumdorlikni oshiradi
adOpenKeyset 1 Keyset kursor. 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 kursor. Boshqa foydalanuvchilar qo‘shgan, o‘zgartirgan va o‘chirgan yozuvlar ko‘rinadi hamda Recordset bo‘ylab harakatlanishning barcha turlariga ruxsat beriladi
adOpenStatic 3 Statik kursor. 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 turi ko‘rsatilmagan. Klonlar qulflash turini asl Recordset’dan meros qilib oladi.
adLockReadOnly 1 Standart qiymat. Faqat o‘qish uchun mo‘ljallangan yozuvlar
adLockPessimistic 2 Pessimistik qulflash, yozuvma-yozuv. Provayder yozuvlarni tahrirlashdan so‘ng darhol qulflaydi
adLockOptimistic 3 Optimistik qulflash, yozuvma-yozuv. Provayder yozuvlarni faqat update chaqirilganda qulflaydi
adLockBatchOptimistic 4 Optimistik paketli yangilashlar. Paketli yangilash rejimi uchun talab qilinadi

CommandTypeEnum qiymatlari

Konstanta Qiymat Tavsif
adCmdUnspecified -1 Buyruq turi ko‘rsatilmagan
adCmdText 1 CommandText’ni buyruqning yoki saqlangan protsedura chaqiruvining matnli ta’rifi sifatida talqin qiladi
adCmdTable 2 CommandText’ni ustunlari SQL so‘rovi orqali qaytariladigan jadval nomi sifatida talqin qiladi
adCmdStoredProc 4 CommandText’ni saqlangan protsedura nomi sifatida talqin qiladi
adCmdUnknown 8 Standart qiymat. Buyruq turi noma’lum
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 ochilgan bo‘lishi kerak. ExecuteOptionEnum’ning adAsyncExecute qiymati bilan birlashtirib bo‘lmaydi.

ExecuteOptionEnum qiymatlari

Konstanta Qiymat Tavsif
adOptionUnspecified -1 Buyruq ko‘rsatilmagan
adAsyncExecute 16 Buyruq asinxron bajarilishi kerak. CommandTypeEnum’ning adCmdTableDirect qiymati bilan birlashtirib bo‘lmaydi
adAsyncFetch 32 CacheSize xususiyatida ko‘rsatilgan dastlabki miqdordan keyin qolgan qatorlar asinxron olinishi kerak
adAsyncFetchNonBlocking 64 Ma’lumot olish paytida asosiy oqim (main thread) hech qachon bloklanmaydi. Agar so‘ralgan qator hali olinmagan bo‘lsa, joriy qator avtomatik ravishda fayl oxiriga o‘tadi. Agar Recordset’ni doimiy saqlangan Recordset’ni o‘z ichiga olgan Stream’dan ochsangiz, adAsyncFetchNonBlocking hech qanday ta’sir ko‘rsatmaydi; amal sinxron va bloklovchi bo‘ladi. Recordset’ni ochish uchun adCmdTableDirect parametri ishlatilganda adAsynchFetchNonBlocking hech qanday ta’sir ko‘rsatmaydi
adExecuteNoRecords 128 Buyruq matni qatorlar qaytarmaydigan buyruq yoki saqlangan protseduradir. Agar biror qator olinsa, u tashlab yuboriladi va qaytarilmaydi. adExecuteNoRecords faqat Command yoki Connection’ning Execute metodiga ixtiyoriy parametr sifatida uzatilishi mumkin
adExecuteStream 256 Buyruq bajarilishi natijalari oqim (stream) sifatida qaytarilishi kerak. adExecuteStream faqat Command’ning Execute metodiga ixtiyoriy parametr sifatida uzatilishi mumkin
adExecuteRecord 512 CommandText — Record obyekti sifatida qaytarilishi kerak bo‘lgan bitta qatorni qaytaradigan buyruq yoki saqlangan protsedura

❮ Recordset obyektining to‘liq ma’lumotnomasi

W3Schools Pathfinder

Yutuqlaringizni kuzating – bu bepul!