使用OleDbCommand
. 我可以添加 SQL 参数,从而使查询免受 SQL 注入的影响,但是有没有办法在FROM
cluase 中做到这一点。见下文
这行得通
query = "Select * From Company Where @param = 1";
OleDbCommand Command = new OleDbCommand(query, sqlConnStr);
DataTable Table = new DataTable();
DataSet dataSet = new DataSet();
Table = null;
//Add Parameters
Command.Parameters.AddWithValue("param", "ID");
Command.ExecuteNonQuery();
adapter.SelectCommand = Command;
adapter.Fill(dataSet);
Table = dataSet.Tables[0];
它返回一个漂亮的表,其中 id = 1
但
我正在寻找这样的东西,请注意 FROM CLAUSE
query = "Select * From @tableName Where @param = 1";
OleDbCommand Command = new OleDbCommand(query, sqlConnStr);
DataTable Table = new DataTable();
DataSet dataSet = new DataSet();
Table = null;
//Add Parameters
Command.Parameters.AddWithValue("param", "ID");
Command.Parameters.AddWithValue("tableName", "Company");
Command.ExecuteNonQuery();
adapter.SelectCommand = Command;
adapter.Fill(dataSet);
Table = dataSet.Tables[0];
DBMS 不断返回"Error in From clause"
PS一切都拼写正确 - 我三重检查
致所有人 - 谢谢,但是我将坚持只使用参数化 SQL。我不喜欢 Dynamic SQL
One BIT