Şu anda çevrimdışısınız; İnternet'in yeniden bağlanması bekleniyor

BILGI: Jet OLE DB sağlayıcısı, sürüm 4.0 Supports @@ kimlik SELECT.

ÖNEMLİ: Bu makale, bir kişi tarafından çevrilmek yerine, Microsoft makine-çevirisi yazılımı ile çevrilmiştir. Microsoft size hem kişiler tarafından çevrilmiş, hem de makine-çevrisi ile çevrilmiş makaleler sunar. Böylelikle, bilgi bankamızdaki tüm makalelere, kendi dilinizde ulaşmış olursunuz. Bununla birlikte, makine tarafından çevrilmiş makaleler mükemmel değildir. Bir yabancının sizin dilinizde konuşurken yapabileceği hatalar gibi, makale; kelime dağarcığı, söz dizim kuralları veya dil bilgisi açısından yanlışlar içerebilir. Microsoft, içeriğin yanlış çevrimi veya onun müşteri tarafından kullanımından doğan; kusur, hata veya zarardan sorumlu değildir. Microsoft ayrıca makine çevirisi yazılımını sıkça güncellemektedir.

Makalenin İngilizcesi aşağıdaki gibidir:232144
Özet
Sürüm 4.0 Jet OLE DB sağlayıcısı bağlantınızda oluşturulan otomatik artış alanın değerini almanıza olanak tanır, SELECT @@ kimlik sorgu destekler. Bu özel sorgu sonuçları, otomatik artış değeri veritabanınızda diğer bağlantılarda kullanılan etkilemez. Bu özellik, Jet 4.0 veritabanları ile ancak eski biçimleriyle çalışır.
Daha fazla bilgi
Aşağıdaki kod <a0>Yeni eklenen bir otomatik artım</a0> alanının değerini almak için SELECT @@ kimliğini kullanarak gösterir. Kod parçacığını, kod, tablo sorgu oluşturmak için de içerir.
Dim cnDatabase As ADODB.ConnectionDim rsNewAutoIncrement As ADODB.RecordsetDim strConn As StringDim strSQL As StringDim strPathToMDB As String   strPathToMDB = "C:\NewJet4.MDB"strConn = "Provider=Microsoft.Jet.OLEDB.4.0;" & _           "Data Source=" & strPathToMDB & ";"Set cnDatabase = New ADODB.Connection    cnDatabase.Open strConn        strSQL = "CREATE TABLE AutoIncrementTest " & _             "(ID int identity, Description varchar(40), " & _             "CONSTRAINT AutoIncrementTest_PrimaryKey PRIMARY KEY (ID))"    cnDatabase.Execute strSQL, , adCmdText + adExecuteNoRecords        strSQL = "INSERT INTO AutoIncrementTest " & _             "(Description) VALUES ('AutoIncrement Test')"    cnDatabase.Execute strSQL, , adCmdText + adExecuteNoRecords        strSQL = "SELECT @@Identity"    Set rsNewAutoIncrement = New ADODB.Recordset    rsNewAutoIncrement.Open strSQL, cnDatabase, adOpenForwardOnly, _                            adLockReadOnly, adCmdText    MsgBox "New Auto-increment value is: " & rsNewAutoIncrement(0).Value    rsNewAutoIncrement.Close    Set rsNewAutoIncrement = Nothing    strSQL = "DROP TABLE AutoIncrementTest"    cnDatabase.Execute strSQL, , adCmdText + adExecuteNoRecords    cnDatabase.CloseSet cnDatabase = Nothing				
Yeni eklenen bu işlevsellik sayesinde, ADO 2.1 ve daha sonra istemci tarafı ActiveX Data Objects (ADO) kayıt kümesi içinde yeni eklenen otomatik artış değerleri görebilirsiniz. Jet Sağlayıcısı için yeni bir satır güncelleştirme veya UpdateBatch (seçtiğiniz LockType bağlı) çağırarak gönderdiğinizde, ADO imleç altyapısı tabloda yeni bir satır oluşturmak için INSERT INTO sorgusu oluşturur. ADO, recordset için bir otomatik artım alan içeriyorsa, SELECT @@ kimlik sorguda, otomatik artış alanı için oluşturulan değerini almak için de oluşturur. Bu özellik aşağıdaki kod gösterir:
Dim cnDatabase As ADODB.ConnectionDim rsNewAutoIncrement As ADODB.RecordsetDim strConn As StringDim strSQL As StringDim strPathToMDB As String    strPathToMDB = "C:\NewJet4.MDB"strConn = "Provider=Microsoft.Jet.OLEDB.4.0;" & _          "Data Source=" & strPathToMDB & ";"    Set cnDatabase = New ADODB.Connection    cnDatabase.Open strConn        strSQL = "CREATE TABLE AutoIncrementTest " & _             "(ID int identity, Description varchar(40), " & _             "CONSTRAINT AutoIncrementTest_PrimaryKey PRIMARY KEY (ID))"    cnDatabase.Execute strSQL, , adCmdText + adExecuteNoRecords    strSQL = "SELECT ID, Description FROM AutoIncrementTest"    Set rsNewAutoIncrement = New ADODB.Recordset    rsNewAutoIncrement.CursorLocation = adUseClient    rsNewAutoIncrement.Open strSQL, cnDatabase, adOpenStatic, _                            adLockOptimistic, adCmdText    rsNewAutoIncrement.AddNew    rsNewAutoIncrement("Description").Value = "AutoIncrement Test"    rsNewAutoIncrement.Update    MsgBox "New Auto-increment value is: " & rsNewAutoIncrement(0).Value    rsNewAutoIncrement.Close    Set rsNewAutoIncrement = Nothing    strSQL = "DROP TABLE AutoIncrementTest"    cnDatabase.Execute strSQL, , adCmdText + adExecuteNoRecords    cnDatabase.CloseSet cnDatabase = Nothing				
, Microsoft Access 2000'i kullanarak veya MDAC 2.1 ile birlikte gelen ADOX kitaplık kullanarak yeni bir Jet 4.0 veritabanı oluşturabilirsiniz. Visual Basic projenizde bu Kitaplığı'nı kullanmak için Microsoft ADO Ext. 2.1 ve güvenlik için bir başvuru oluşturun. Aşağıdaki gibi bir kod daha sonra yeni bir Jet 4.0 veritabanı oluşturmak için kullanabilirsiniz:
Dim strPathToMDB As StringDim catNewDatabase As ADOX.Catalog        strPathToMDB = "C:\NewJet4.MDB"    If Dir(strPathToMDB) <> "" Then        Kill strPathToMDB    End If    strConn = "Provider=Microsoft.Jet.OLEDB.4.0;" & _              "Data Source=" & strPathToMDB & ";"    Set catNewDatabase = New ADOX.Catalog    catNewDatabase.Create strConn    Set catNewDatabase = Nothing				
Microsoft Access veritabanınızın biçimini belirlemek için <a0></a0>, Connection nesnesinin Properties derlemesinde dinamik "Jet OLEDB:Engine Type" özelliği denetleyin. Özelliğin Jet 4.x veritabanları için 5 değerini döndürecektir. Aşağıdaki kod parçacığını özelliðini kullanarak gösterir:
Dim cnDatabase As ADODB.ConnectionDim strConn As StringDim strPathToMDB As String    strPathToMDB = "C:\NewJet4.MDB"strConn = "Provider=Microsoft.Jet.OLEDB.4.0;" & _          "Data Source=" & strPathToMDB & ";"Set cnDatabase = New ADODB.Connection    cnDatabase.Open strConn    If cnDatabase.Properties("Jet OLEDB:Engine Type").Value = 5 Then        MsgBox "Jet 4.0 database"    Else        MsgBox "Not a Jet 4.0 database"    End If    cnDatabase.CloseSet cnDatabase = Nothing				
Referanslar
Microsoft Data Access SDK; arama: "Provider-Defined özellikleri"; Konu: "DBPROPSET_JETOLEDB_DBINIT"
ADOX'u Jet kimlik Autoıncrement

Uyarı: Bu makalenin çevirisi otomatik olarak yapılmıştır

Özellikler

Makale No: 232144 - Son İnceleme: 12/03/2003 18:25:00 - Düzeltme: 3.1

Microsoft OLE DB Provider for Jet 4.0, Microsoft Data Access Components 2.1 Service Pack 2, Microsoft Data Access Components 2.5, Microsoft Data Access Components 2.6, Microsoft Data Access Components 2.7, Microsoft ActiveX Data Objects 2.1 Service Pack 2, Microsoft ActiveX Data Objects 2.5, Microsoft ActiveX Data Objects 2.6, Microsoft ActiveX Data Objects 2.7, Microsoft Visual Basic 5.0 Professional Edition, Microsoft Visual Basic 6.0 Professional Edition, Microsoft Visual Basic 5.0 Enterprise Edition, Microsoft Visual Basic Enterprise Edition for Windows 6.0

  • kbmt kbdatabase kbinfo kbjet KB232144 KbMttr
Geri bildirim