2016-03-22 49 views
0

Ayrıca aşağıdaki sorun giderme ipuçlarına sahip görünüyor ... "DateTime için bir dize dönüştürürken, her bir değişken DateTime nesnesine koymadan önce veriyi almak için dizeyi ayrıştırın"'System.FormatException', mscorlib.dll dosyasında meydana geldi - DateTime

Programımın bunu neden DateTime'a dönüştürmeye çalıştığını anlayamıyorum? Erişim veritabanım (bağlı) kesinlikle autoNumbers, Numbers & Kısa Metin.

Dim objConnection As New OleDb.OleDbConnection("Provider=Microsoft.ACE.OLEDB.12.0;Data Source= InfoSystem.accdb") 
Dim objAdminDA As New OleDb.OleDbDataAdapter("Select *from tblStudents", objConnection) 
Dim objAdminCB As New OleDb.OleDbCommandBuilder(objAdminDA) 
Dim objDataSet As New DataSet() 

Private Sub frmAdmin_Load(sender As Object, e As EventArgs) Handles MyBase.Load 

    'Clears DataSet of any existing data 
    objDataSet.Clear() 
    'Fills schema - adds table structure information to DataSet 
    objAdminDA.FillSchema(objDataSet, SchemaType.Source, "tblStudents") 
    'Fills DataSet with info from the DataAdapter 
    objAdminDA.Fill(objDataSet, "tblStudents") 
    'Fill the DataSet with info from the Admin table 
    objAdminDA.FillSchema(objDataSet, SchemaType.Source, "tblStudents") 
    objAdminDA.Fill(objDataSet, "tblStudents") 

    Dim objRow As DataRow 
    objRow = objDataSet.Tables("tblStudents").Rows.Find("StudentNo") 

    txtAdminID2.Text = objRow.Item("StudentName") 
    txtAdminName2.Text = objRow.Item("AdminName") 
    txtDept2.Text = objRow.Item("Department") 
    txtTitle2.Text = objRow.Item("Title") 

Aşağıdaki kod, önceki bir formdaki sorunu ortadan kaldırdı, ancak burada işlem göremiyorum. (ComboBox yerine TextBox). VB.net ile veritabanlarını ilk kez kullanma.

Dim objRow As DataRow 
    objRow = objDataSet.Tables("tblAdmins").Rows.Find(cboxAdminID.SelectedItem.ToString) 
    txtAdminName.Text = objRow.Item("AdminName") 
    txtDept.Text = objRow.Item("Department") 
    txtTitle.Text = objRow.Item("Title") 
+0

benim veritabanındaki herhangi Tarihlerini yok ya da bu konuda benim projede! –

+0

beni affediyor, sadece kullanıcının programı açtığı/tablodaki yeni satıra gittiğinde otomatik olarak günün saatini otomatik olarak ızgaraya eklemeyi mi istiyorsun? – Werdna

cevap

0

iki kez veri kümesi dolduruyor, çünkü senin kodunu değiştirmek olacaktır:

Dim objConnection As New OleDb.OleDbConnection("Provider=Microsoft.ACE.OLEDB.12.0;Data Source= InfoSystem.accdb") 
Dim objAdminDA As New OleDb.OleDbDataAdapter("Select * from tblStudents", objConnection) 
Dim objAdminCB As New OleDb.OleDbCommandBuilder(objAdminDA) 
Dim objDataSet As New DataSet() 

Private Sub frmAdmin_Load(sender As Object, e As EventArgs) Handles MyBase.Load 

'Clears DataSet of any existing data 
objDataSet.Clear() 
'Fills DataSet with info from the DataAdapter 
objAdminDA.Fill(objDataSet, "tblStudents") 

' Get the row with the matching StudentNo 
Dim objRow As DataRow 
objRow = objDataSet.Tables("tblStudents").Rows.Find("StudentNo") 

If objRow.count = 1 Then 
    txtAdminID2.Text = objRow.Item("StudentName").ToString 
    txtAdminName2.Text = objRow.Item("AdminName").ToString 
    txtDept2.Text = objRow.Item("Department").ToString 
    txtTitle2.Text = objRow.Item("Title").ToString 
End-if 
+0

Ayrıca, sorgunuzda * bulunmadan önce bir alan eksik. – Chuck

İlgili konular