输入字符串格式不正确。无法在ID列中存储<txtusernamereister.text>。预期类型是Int32

时间:2015-05-07 13:56:10

标签: vb.net

当我运行此程序时,我收到错误

  

输入字符串的格式不正确。无法存储    在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()

1 个答案:

答案 0 :(得分:0)

得到这个的原因是,您最初用整数值填充了data table特定索引。现在您要用不同的数据类型值填充同一数据表。因此,要实现这一点,您需要使用CAST() or CONVERT()函数显式地键入强制类型转换,以使该特定列在从数据库中选择时转换为Int32