gpt4 book ai didi

c# - 尝试插入数据表的数组值时出现 SQL 语法错误

转载 作者:行者123 更新时间:2023-11-30 00:08:18 24 4
gpt4 key购买 nike

当我尝试在 mysql 数据库中插入名为“table”的数据表的数组值时,出现 SQL 语法错误。

ERROR [42000] [MySQL][ODBC 3.51 Driver][mysqld-5.0.27-community-nt]You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right.

数据表=表;

代码如下:

 for (int x = 0; x < table.Rows.Count; x++)
{
conn.Open();
OdbcCommand command = new OdbcCommand("INSERT INTO jevslimporttemp(JevSLImportTempCode, JevSLImportTempDescription, JevSLImportTempAmount)VALUES('" + table.Rows[x][0].ToString() + "','" + table.Rows[x][1].ToString() + "','" + Convert.ToDouble(table.Rows[x][2].ToString()) + "');", conn);
command.ExecuteNonQuery();
conn.Close();
}

最佳答案

您的变量中的值很可能会干扰 SQL,例如单引号或问号。您应该参数化您的查询。

OdbcCommand command = new OdbcCommand("INSERT INTO jevslimporttemp(JevSLImportTempCode, JevSLImportTempDescription, JevSLImportTempAmount)VALUES(?, ?, ?);", conn);

command.Parameters.AddWithValue("JevSLImportTempCode", table.Rows[x][1].ToString());
command.Parameters.AddWithValue("JevSLImportTempDescription", table.Rows[x][1].ToString());
command.Parameters.AddWithValue("JevSLImportTempAmount", Convert.ToDouble(table.Rows[x][2].ToString()));

关于c# - 尝试插入数据表的数组值时出现 SQL 语法错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24319379/

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