1
我有一個數據適配器,包含數據集中的4個表。當我將新記錄更新到表中時,它出現在SQL數據庫中,並且關聯的datagridivew已被重新加載到表中,但是當我嘗試使用以下代碼讀取新記錄時,它無法找到記錄。無法從表中讀取新記錄
Dim row As DataRow = dsSrvAV.Tables("ServiceAvailability").Select("ID = " & intRecordID).FirstOrDefault()
相同的代碼用於讀取應用程序打開時數據庫中的其他記錄,它只是它無法讀取的新記錄。
這是寫入新的記錄
Dim newAvailability As DataRow = dsSrvAV.Tables("ServiceAvailability").NewRow()
'Add some data to it
newAvailability("Service_ID") = cboServices.SelectedValue
newAvailability("Date") = Format(dtpDate.Value.ToString, "Short Date")
newAvailability("Downtime") = nudDowntime.Value
newAvailability("Notes") = txtNotes.Text
newAvailability("MajorIncident") = txtMajorIncident.Text
newAvailability("ActionsTaken") = txtActionsTaken.Text
newAvailability("Type") = cboType.SelectedValue
newAvailability("Root_Cause") = txtRootCause.Text
'Add it to the table
dsSrvAV.Tables("ServiceAvailability").Rows.Add(newAvailability)
'Update the adapter
daSrvAv.Update(dsSrvAV, "ServiceAvailability")
dsSrvAV.Tables("ServiceAvailability").AcceptChanges()
任何人都可以提供任何想法,爲什麼這不會允許新的記錄回讀的代碼。
感謝 豐富
你從哪裏得到intRecordId?你確定它的正確價值嗎? ID列是int嗎? – robnick
intRecord從datagridview中從數據庫中的pkey值中獲取。它適用於數據庫中存在的所有其他記錄,只是新添加了它找不到的記錄。 –
'dsSrvAV'在兩個地方都明確指向相同的'DataSet'對象? –