ADO Recordset Nesnesi

Örnek

GetRows
Bu örnek, GetRows yöntemini nasıl kullanılacağını gösterir.

Recordset nesnesi

ADO Recordset nesnesi, veritabanı tablosundan gelen bir kayıt kümesini içerir. Bir Recordset nesnesi, kayıtlardan ve sütunlardan (alanlardan) oluşur.

ADO'da, bu nesne en önemli ve veritabanı verilerini işlemek için en sık kullanılan nesnedir.

ProgID

set objRecordset=Server.CreateObject("ADODB.recordset")

Bir Recordset açtığınızda ilk kez, mevcut kayıt işaretçisi ilk kayda yönlendirilir ve BOF ve EOF özellikleri False'dır. Kayıt yoksa, BOF ve EOF özellikleri True'dır.

Recordset nesnesi, iki tür güncellemeyi destekleyebilir:

  • Hemen güncelleme - Update yöntemi çağrıldığında, tüm değişiklikler hemen veritabanına yazılır.
  • Toplu güncelleme - Sağlayıcı, çok sayıda değişikliği önbelleğe alır ve bu değişiklikleri UpdateBatch yöntemiyle veritabanına gönderir.

ADO'da, 4 farklı kürsü (işaretçi) türü tanımlanmıştır:

  • Dinamik kürsü - Diğer kullanıcıların yaptığı eklemeleri, değişiklikleri ve silmeleri görmenizi sağlar
  • Anahtar küme kürsüsü - Dinamik kürsüye benzer, ancak diğer kullanıcıların yaptığı eklemeleri göremezsiniz ve diğer kullanıcıların sildiği kayıtlara erişimini önler. Diğer kullanıcıların yaptığı veri değişiklikleri hala görülebilir.
  • Statik kürsör - Kayıt kümesinin statik bir kopyasını sağlar, veri arama veya rapor oluşturma için kullanılabilir. Ayrıca, diğer kullanıcıların yaptığı eklemeler, değişiklikler ve silmeler görünmez olacaktır. Bir istemci Recordset nesnesi açtığınızda, bu tek izin verilen kürsör türüdür.
  • Sadece ileri kürsör - Recordset'te sadece ileri doğru kaydırılmasına izin verir. Ayrıca, diğer kullanıcıların yaptığı eklemeler, değişiklikler ve silmeler görünmez olacaktır.

Kürsör türünü CursorType özelliği veya Open yöntemindeki CursorType parametresi ile ayarlayabilirsiniz.

Yorum:Tüm sağlayıcılar (providers) Recordset nesnesinin tüm yöntemlerini ve özelliklerini desteklemeyebilir.

Özellik

Özellik Açıklama
AbsolutePage Recordset nesnesindeki sayfa numarasını belirlemek için bir değeri ayarlamak veya döndürmek.
AbsolutePosition Recordset nesnesindeki mevcut kaydın sıra konumunu belirlemek için bir değeri ayarlamak veya döndürmek.
ActiveCommand Recordset nesnesi ile ilgili olan Command nesnesini döndürmek.
ActiveConnection Bağlantı kapalıysa bağlantının tanımını ayarlamak veya döndürür, bağlantı açıkysa mevcut Connection nesnesini ayarlamak veya döndürür.
BOF Mevcut kayıt konumu ilk kaydın öncesindeysa true döndürür, aksi takdirde false döndürür.
Bookmark Mevcut kayıt konumunu kaydeden bir işaretçi ayarlamak veya döndürmek.
CacheSize Önbelleğe alınabilecek kayıt sayısını ayarlamak veya döndürmek.
CursorLocation Kürsör hizmetinin konumunu ayarlamak veya döndürmek.
CursorType Bir Recordset nesnesinin kürsör türünü ayarlamak veya döndürmek.
DataMember DataSource özelliğinden atıfta bulunulan nesneden alınacak veri üyesinin adını ayarlamak veya döndürmek.
DataSource Rekordset nesnesi olarak temsil edilecek verileri içeren bir nesneyi belirtmek.
EditMode Mevcut kaydın düzenleme durumunu döndürür.
EOF Mevcut kayıt konumu son kayıtın sonrasındaysa true döndürür, aksi takdirde false döndürür.
Filter Recordset nesnesindeki veriler için bir filtre döndürmek.
Index Recordset nesnesinin mevcut indeksinin adını ayarlamak veya döndürmek.
LockType Bir kayıtın Recordset'te düzenlenirken kilit türünü belirlemek için bir değeri ayarlamak veya döndürmek.
MarshalOptions Bir değeri ayarlamak veya döndürmek, bu değer hangi kayıtların sunucuya döndürüleceğini belirtir.
MaxRecords Bir sorgudan Recordset nesnesi döndüren maksimum kayıt sayısını ayarlamak veya döndüren.
PageCount Bir Recordset nesnesindeki veri sayfasını döndüren.
PageSize Bir Recordset nesnesinin bir sayfasında izin verilen maksimum kayıt sayısını ayarlamak veya döndüren.
RecordCount Bir Recordset nesnesindeki kayıt sayısını döndüren.
Sort Bir veya daha fazla alan adını ayarlamak veya döndüren, bu alan adları Recordset sıralama temelidir.
Source Bir dize değeri, bir Command nesnesi referansı veya Recordset nesnesinin veri kaynağını belirten bir dize değeri ayarlamak veya döndüren.
State Recordset nesnesinin açık, kapalı, bağlanıyor, çalışıyor veya veri getiriyor olup olmadığını tanımlayan bir değeri döndüren.
Status Bir grup güncelleme veya büyük ölçekli bir işlem hakkında mevcut kayıt durumunu döndüren.
StayInSync Ebeveyn kayıt konumu değiştiğinde alt kayıtların referanslarının değişip değişmeyeceğini ayarlamak veya döndüren.

Yöntem

Yöntem Açıklama
AddNew Yeni bir kayıt oluşturmak için kullanılır.
Cancel Bir işlemi iptal eden.
CancelBatch Bir grup güncellemeyi iptal eden.
CancelUpdate Recordset nesnesinin bir kaydındaki değişiklikleri iptal eden.
Clone Var olan bir Recordset'in kopyasını oluşturmak için kullanılır.
Close Bir Recordset'i kapatmak için kullanılır.
CompareBookmarks İki kitaplığı karşılaştıran.
Delete Bir kayıt veya bir grup kayıtı silmek için kullanılır.
Find Bir Recordset'te belirli bir şartı karşılayan bir kayıt arayan.
GetRows Birden fazla kaydı bir Recordset nesnesinden iki boyutlu bir diziye kopyalayan.
GetString Recordset'i bir dize olarak döndüren.
Move Recordset nesnesinde kayıt işaretçisini hareket ettiren.
MoveFirst Kayıt işaretçisini en ilk kayıta taşıyan.
MoveLast Kayıt işaretçisini en son kayıta taşıyan.
MoveNext Kayıt işaretçisini bir sonraki kayıta taşıyan.
MovePrevious Kayıt işaretçisini bir önceki kayıta taşıyan.
NextRecordset Geçerli Recordset nesnesini temizlemek için bir dizi komut çalıştırarak ve bir sonraki Recordset'e dönmek için kullanılır.
Open Bir veritabanı ögesi açın, bu öge tablo kayıtlarına, sorgu sonuçlarına veya kaydedilmiş Recordset erişimine sağlar.
Requery Recordset nesnesindeki verileri, nesne temel alınan sorguyu yeniden çalıştırarak günceller.
Resync Mevcut Recordset'teki verileri orijinal veritabanından tazeleyin.
Save Recordset nesnesini dosya veya Stream nesnesine kaydeder.
Seek Recordset'in indeksini arar, belirtilen değere eşleşen satırları hızlı bir şekilde bulur ve mevcut satır haline getirir.
Supports Bir boolean değer döndürür, bu değer Recordset nesnesinin belirli bir türdeki işlevi destekleyip desteklemediğini tanımlar.
Update Recordset nesnesindeki bir tek kayıta yapılan tüm değişiklikleri kaydedin.
UpdateBatch Tüm Recordset değişikliklerini veritabanına kaydedin. Lütfen toplu güncelleme modunda kullanın.

Etkinlik

Not: Etkinlikleri VBScript veya JScript kullanarak işlem yapamazsınız (sadece Visual Basic, Visual C++ ve Visual J++ dilleri etkinlikleri işlemektedir).

Etkinlik Açıklama
EndOfRecordset Recordset sonundaki bir satıra geçmeye çalışırken tetiklenir.
FetchComplete Asenkron işlemdeki tüm kayıtlar okunduktan sonra tetiklenir.
FetchProgress Asenkron işlem sırasında düzenli olarak tetiklenir, kaç kayıt okunduğunu rapor eder.
FieldChangeComplete Field nesnesinin değeri değiştiğinde tetiklenir.
MoveComplete Recordset içindeki mevcut konum değiştikten sonra tetiklenir.
RecordChangeComplete Bir kayıt değişmeden sonra tetiklenir.
RecordsetChangeComplete Recordset değişmeden sonra tetiklenir.
WillChangeField Field nesnesinin değeri değişmeden önce tetiklenir
WillChangeRecord Bir kayıt değişmeden önce tetiklenir.
WillChangeRecordset Recordset değişmeden önce tetiklenir.
WillMove Recordset içindeki mevcut konum değişmeden önce tetiklenir.

Koleksiyon

Koleksiyon Açıklama
Fields Bu Recordset nesnesindeki Field nesnelerinin sayısını belirtir.
Properties Tüm Recordset nesnelerindeki Property nesnelerini içerir.

Fields koleksiyonunun özellikleri

Özellik Açıklama
Count

Fields koleksiyonunda projelerin sayısını döndürür. 0 ile başlar.

Örnek:

	countfields = rs.Fields.Count
	
Item(adlı_item/numara)

Fields koleksiyonunda belirli bir projeyi döndürür.

Örnek:

	itemfields = rs.Fields.Item(1)
	veya	
	itemfields = rs.Fields.Item("Name")
	

Properties koleksiyonunun özellikleri

Özellik Açıklama
Count

Properties koleksiyonunda projelerin sayısını döndürür. 0 ile başlar.

Örnek:

	countprop = rs.Properties.Count
	
Item(adlı_item/numara)

Properties koleksiyonunda belirli bir projeyi döndürür.

Örnek:

	itemprop = rs.Properties.Item(1)
	veya
	itemprop = rs.Properties.Item("Name")