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:
|
| 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!
