我在 C# 上使用 SQlite 数据库并且参数有错误问题。
using System.Data.SQLite;
这是一个主要的代码部分:
this.dbUpdateCommand = new SQLiteCommand();
dbUpdateCommand.Parameters.AddWithValue("@paramNewValue", (string)this.valueNew);
dbUpdateCommand.Parameters.AddWithValue("@paramPredValue", (string)this.valuePred);
dbUpdateCommand.Parameters.AddWithValue("@paramTableName", (string) this.tableName);
dbUpdateCommand.Parameters.AddWithValue("@paramColumnName", (string)this.columnInDB);
dbUpdateCommand.Parameters.AddWithValue("@paramKeyField", (string)this.keyFieldInDB);
dbUpdateCommand.Parameters.AddWithValue("@paramKeyValue", (string)this.keyValueInDB);
dbUpdateCommand.CommandText = "UPDATE @paramTableName SET @paramColumnName=@paramNewValue WHERE @paramKeyField=@paramKeyValue;";
dbUpdateCommand.ExecuteNonQuery();
它向我抛出异常“@paramTableName”附近的 SQLite 错误:语法错误”
我试图制作没有参数但使用字符串连接的纯 SQL 语句,并且它适用于相同的变量(this.tableName 是有效的数据库表名)所以我的参数似乎有问题。有谁知道,什么?