Soruma bir VB.net projesinin bir Access DB'ye bağlanmasıyla ilgili. Masamda bir birincil anahtar olmalı mı yoksa bir PK'ye bakmamak için kodumu değiştirmenin bir yolu var mı?Başlangıç Birincil Anahtar kullanımı/rol
Bana birincil anahtarın olmadığını söyleyen bir hatam var. Şimdi "AdminID" i birincil anahtarım yaparsam, sistem çalışır. Sadece bunun gerekli olup olmadığını soruyordum?
anda benim combobox görüntüler Doğrusu bu "AdminName"
Teşekkür görüntülendiği gibi "AdminID". o Eğer doldurun budur çünkü
Dim objConnection As New OleDb.OleDbConnection("Provider=Microsoft.ACE.OLEDB.12.0;Data Source= InfoSystem.accdb")
Dim objAdminDA As New OleDb.OleDbDataAdapter("Select *from tblAdmins", objConnection)
Dim objAdminCB As New OleDb.OleDbCommandBuilder(objAdminDA)
Dim objDataSet As New DataSet()
Public Sub Retrieve()
'Clears DataSet of any existing data
objDataSet.Clear()
'Fills schema - adds table structure information to DataSet
objAdminDA.FillSchema(objDataSet, SchemaType.Source, "tblAdmins")
'Fills DataSet with info from the DataAdapter
objAdminDA.Fill(objDataSet, "tblAdmins")
'Fill the DataSet with info from the Admin table
objAdminDA.FillSchema(objDataSet, SchemaType.Source, "tblAdmins")
objAdminDA.Fill(objDataSet, "tblAdmins")
'Empty combo box
cboxAdmin.Items.Clear()
'Loop through each row, adding the AdminName to the combo box
Dim i As Integer, strAdminID As String
For i = 1 To objDataSet.Tables("tblAdmins").Rows.Count
strAdminID = objDataSet.Tables("tblAdmins").Rows(i - 1).Item("AdminID")
cboxAdmin.Items.Add(strAdminID)
Next
'Select first item in the list
cboxAdmin.SelectedIndex = 0
FillAdminDetails()
End Sub
Public Sub FillAdminDetails()
Dim objRow As DataRow
objRow = objDataSet.Tables("tblAdmins").Rows.Find(cboxAdmin.SelectedItem.ToString)
txtStaffDept.Text = objRow.Item("Department")
txtStaffTitle.Text = objRow.Item("Title")
End Sub
Private Sub cboxAdmin_SelectedIndexChanged(sender As Object, e As EventArgs) Handles cboxAdmin.SelectedIndexChanged
FillAdminDetails()
End Sub
End Sub
Zorunlu bir neden ** var mı ** PK almak için? – Plutonix
Tüm veritabanı tasarımı PK'ye sahip tablolara dayanır. – peterG
Formlarımın ve diğer tabloların formatı birbiriyle biraz çelişiyor, büyük bir zorunluluk değil, işleri biraz kolaylaştırıyor. Kendi merakımdan da çıkarak bu kodu daha iyi anlamaya çalışmak. –