我有一个 mysql 未知列错误 1054。我无法在我的数据库表中插入 我的插入函数
public void Insert(string tablename ,string[] values, string[] columns)
{
string col = "(";
for (int x = 0; x < columns.Length; x++)
{
if (columns[x] == columns.Last())
col += columns[x];
else
if (columns.Length > 1)
col += columns[x] + ",";
}
col += ")";
string val = "VALUES"+"(";
for (int x = 0; x < values.Length; x++)
{
if (values[x] == values.Last())
val += values[x];
else
if (values.Length > 1)
val += values[x] + ",";
}
val += ")";
string query = "INSERT INTO "+ tablename + col + val ;
我的查询:从函数返回。
"INSERT INTO rezervationinformations(Fullname,Phone,Description)VALUES(dsa,cq,q)"
调用函数:
db.Insert("rezervationinformations", new string[] { textBox1.Text, textBox2.Text,
textBox3.Text }, new string[] { "Fullname", "Phone", "Description" });
最佳答案
您试图实现的目标非常糟糕,不仅会导致错误,还会将您的数据库暴露给 SQL 注入(inject)。
忘掉这个无用的函数,使用带参数化查询的 Vanilla ADO.NET
。
或者您始终可以使用 ORM,例如 Entity Framework
关于c# - 字段列表错误中的MySql未知列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41232410/