Recordset Özelliği

Önemli : Bu makale makine çevisidir. Bkz. yasal uyarı. Bu makalenin İngilizce sürümüne buradan ulaşabilirsiniz.

Uygulama

AçılanKutu Nesnesi

Form Nesnesi

ListeKutusu Nesnesi

Rapor Nesnesi

Belirtilen form, rapor, liste kutusu denetimi veya açılan kutu denetiminin kayıt kaynağı'nı temsil eden ADO Kayıt Kümesi veya DAO Kayıt Kümesi nesnesini döndürür ya da ayarlar. Okunur/yazılır.

ifade.Recordset

ifade Gerekli. Uygulandığı Yerler listesindeki nesnelerden birini döndüren bir ifade.

Açıklamalar

Recordset özelliği; form, rapor, liste kutusu denetimi veya açılan kutu denetiminde göz atılan verileri sağlayan kayıt kümesi nesnesini döndürür. Form sorguyu temel alıyorsa, örneğin, Recordset özelliğine başvurmak, aynı sorguyu kullanarak Kayıt Kümesi nesnesini kopyalamakla eşdeğerdir. Ancak, RecordsetClone özelliğini kullanmaktan farklı olarak, formun Recordset özelliği tarafından döndürülen kayıt kümesinde hangi kaydın geçerli olduğunu değiştirmek de formun geçerli kaydını ayarlar.

Bu özellik yalnızca Visual Basic for Applications (VBA) kodu kullanarak kullanılabilir.

Recordset özelliğinin okunur/yazılır davranışını, özellik tarafından tanımlanan kayıt kümesinde bulunan kayıt kümesi türü (ADO veya DAO) ve veri türü (Access veya SQL) belirler.

Kayıt kümesi türü

SQL verisini temel alan

Access verisini temel alan

ADO

Okunur/Yazılır.

Okunur/Yazılır.

DAO

N/A

Okunur/Yazılır.

Aşağıdaki örnekte, önce bir form ve bir kayıt kümesi açılır, ardından formun Recordset özelliği, yeni oluşturulan Kayıt Kümesi nesnesine ayarlanarak form kayıt kümesine bağlanır.

Global rstSuppliers As ADODB.RecordsetSub MakeRW()DoCmd.OpenForm "Suppliers"Set rstSuppliers = New ADODB.RecordsetrstSuppliers.CursorLocation = adUseClientrstSuppliers.Open "Select * From Suppliers", _CurrentProject.Connection, adOpenKeyset, adLockOptimisticSet Forms("Suppliers").Recordset = rstSuppliersEnd Sub

Recordset özelliğini kullanarak:

  • Çoklu formları ortak bir veri kümesine bağlayabilirsiniz. Bu, çoklu formların eşitlenmesine olanak sağlar. Örneğin,

    Set Me.Recordset = Forms!Form1.Recordset

  • Formlarda doğrudan desteklenmeyen yöntemleri Kayıt Kümesi nesnesiyle kullanabilirsiniz. Örneğin, bir kaydı bulmak için, özel bir iletişimdeki ADO Bul veya DAO Bul yöntemleri ile birlikte Recordset özelliğini kullanabilirsiniz.

  • Bir işlemi (geri alınabilir) çoklu formları etkileyen düzenleme kümesi çevresinde kaydırabilirsiniz.

Formun Recordset özelliğini değiştirmek, RecordSource, RecordsetType ve RecordLocks özelliklerini de değiştirebilir. Ayrıca, veri ilişkili bazı özellikler de geçersiz kılınabilir. Örneğin Filter, FilterOn, OrderBy ve OrderByOn özellikleri.

Formun kayıt kümesinin Yeniden Sorgula yöntemini çağırmak (örneğin, Forms(0).Recordset.Requery) formun ilişkisiz olmasına neden olabilir. Bir kayıt kümesiyle ilişkili formdaki verileri yenilemek için, formun RecordSource özelliğini kendisine ayarlayın (Forms(0).RecordSource = Forms(0).RecordSource).

Form bir kayıt kümesiyle ilişkiliyse, Forma Göre Filtre Uygula komutunu kullandığınızda hata oluşur.

Örnek

Aşağıdaki örnek, geçerli formdan Kayıt Kümesi nesnesinin yeni bir kopyasını oluşturmak için Recordset özelliğini kullanır ve ardından, Hata Ayıklama penceresindeki alanların adlarını yazdırır.

Sub Print_Field_Names()
Dim rst As DAO.Recordset, intI As Integer
Dim fld As Field
Set rst = Me.Recordset
For Each fld in rst.Fields
' Print field names.
Debug.Print fld.Name
Next
End Sub

Aşağıdaki örnekte, kayıt kümesini formun geçerli kaydıyla eşitlemek için Recordset özelliği ve Kayıt Kümesi nesnesi kullanılır. Açılan kutudan bir şirket adı seçildiğinde, bu şirketin kaydını bulmak için İlkiniBul yöntemi kullanılır ve bunun sonucunda form, bulunan kaydı görüntüler.

Sub SupplierID_AfterUpdate()
Dim rst As DAO.Recordset
Dim strSearchName As String
Set rst = Me.Recordset
strSearchName = CStr(Me!SupplierID)
rst.FindFirst "SupplierID = " & strSearchName
If rst.NoMatch Then
MsgBox "Record not found"
End If
rst.Close
End Sub

Aşağıdaki kod, farklı koşullarda Recordset özelliği tarafından hangi tür kayıt kümesinin döndürüleceğinin belirlenmesinde kullanılır.

Sub CheckRSType()
Dim rs as Object
Set rs=Forms(0).Recordset
If TypeOf rs Is DAO.Recordset Then
MsgBox "DAO Recordset"
ElseIf TypeOf rs is ADODB.Recordset Then
MsgBox "ADO Recordset"
End If
End Sub

Not : Makine Çevirisi Yasal Uyarısı: Bu makale, insan müdahalesi olmadan bir bilgisayar sistemi tarafından çevrilmiştir. Microsoft bu makine çevirilerini İngilizce bilmeyen kullanıcıların Microsoft ürünleri, hizmetleri ve teknolojileriyle ilgili içeriklerden yararlanmasına yardımcı olmak için sunar. Bu makale makine çevirisi olduğundan sözcük, cümle dizilimi ve gramer hataları içerebilir.

Yeteneklerinizi geliştirin
Eğitimleri keşfedin
Yeni özellikleri ilk olarak siz edinin
Office Insider Programına Katılın

Bu bilgi yararlı oldu mu?

Görüşleriniz için teşekkür ederiz!

Geri bildiriminiz için teşekkürler! Office destek temsilcilerimizden biriyle görüşmeniz yararlı olabilir.

×