gpt4 book ai didi

MySQL 查询浏览器错误数据因列被截断

转载 作者:行者123 更新时间:2023-11-29 18:01:06 24 4
gpt4 key购买 nike

这是我的代码,我不知道为什么我在 Visual Studio 2013 中收到此错误,而我的数据库是 MySQL 查询浏览器:

“其他信息:错误 [HY000] [MySQL][ODBC 3.51 驱动程序][mysqld-5.1.34-community]第 1 行的列“userid”的数据被截断”

如果 a ="new"则 将 sqlstring 变暗为字符串 sqlstring = "INSERT into users(用户名、用户 ID、用户类型、备注)values('"& TextBox1.Text & "','"& TextBox2.Text & "','"& ComboBox1.Text & "','"& TextBox4.Text & "')" cmd = New Odbc.OdbcCommand(sqlstring, cnn) cmd.ExecuteNonQuery() 重置() 禁用() btn3() 结束如果

最佳答案

这是因为您传递的字符总长度超出了 userid 列定义的长度。除此之外,mysql 有自己的托管提供程序,称为 MySqlClient,这就是您应该使用的提供程序。

良好编程实践的一个更好的方法是参数化您的查询。下面的示例至少是您的良好起点:

Dim connectionString As String = "..your connection string here..."
Using SQLConnection As New MySqlConnection(connectionString)
Using sqlCommand As New MySqlCommand()
sqlCommand.CommandText = "INSERT into users(username, userid, usertype, remarks) VALUES (@username, @userid, @usertype, @remarks)"
sqlCommand.Connection = SQLConnection
sqlCommand.CommandType = CommandType.Text
sqlCommand.Parameters.AddWithValue("@username", TextBox1.Text)
sqlCommand.Parameters.AddWithValue("@userid", TextBox2.Text)
sqlCommand.Parameters.AddWithValue("@usertype", ComboBox1.Text)
sqlCommand.Parameters.AddWithValue("@remarks", TextBox4.Text)
SQLConnection.Open()
sqlCommand.ExecuteNonQuery()
End Using
End Using

关于MySQL 查询浏览器错误数据因列被截断,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48333089/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com