当我运行此程序时,我收到错误
输入字符串的格式不正确。无法存储 在ID列中。预期的类型是Int32。
我认为这是因为在我的表中,第一列是1D,其数据类型为Integer。
有没有什么方法可以将txtUsername.Text
的值惰性化到第二列(存储用户名而不是第一列?
Dim dataAdapter As New OleDb.OleDbDataAdapter("Select * FROM Ranking", ObjConnection)
Dim cb As New OleDbCommandBuilder(da)
Dim datatable As New DataTable
dataAdapter.Fill(datatable)
dt.Rows.Add("txtUsernameReister.Text", dt.Rows.Count + 1) 'adds the id only along with a new record in the table ranking'
da.Update(dt)
MsgBox("Registration Succesful")
Login.Show()
Me.Hide()
答案 0 :(得分:0)
得到这个的原因是,您最初用整数值填充了data table
特定索引。现在您要用不同的数据类型值填充同一数据表。因此,要实现这一点,您需要使用CAST() or CONVERT()
函数显式地键入强制类型转换,以使该特定列在从数据库中选择时转换为Int32
。