【发布时间】:2018-06-28 05:19:22
【问题描述】:
这是我的代码,我不知道为什么在我的 Visual Studio 2013 中出现此错误,而我的数据库是 MySQL 查询浏览器:
“附加信息:错误 [HY000] [MySQL][ODBC 3.51 驱动程序][mysqld-5.1.34-community]第 1 行的列 'userid' 的数据被截断”
如果 a = "New" 那么 将 sqlstring 调暗为字符串 sqlstring = "插入用户(用户名、用户ID、用户类型、备注)值('" & TextBox1.Text & "','" & TextBox2.Text & "','" & ComboBox1.Text & "','" & TextBox4.Text & "')" cmd = 新 Odbc.OdbcCommand(sqlstring, cnn) cmd.ExecuteNonQuery() 重置() 禁用() btn3() 结束如果
【问题讨论】:
-
问题很可能是您为该列传递的值对于列定义来说太长了。除此之外,切勿使用字符串连接将值插入到 SQL 代码中。总是use parameters.
-
另外,
Odbc应该是 ADO.NET 提供程序的最后选择。如果您正在使用 MySQL,那么,如果可以,您应该从 MySQL 网站下载 Connector/Net 并使用它。MySqlClient是特定于 MySQL 的提供程序,就像SqlClient特定于 SQL Server 一样。也可以下载一些 MySQL 专用的 VS 工具,支持 EF 等。