下面是我的選擇*功能的代碼 - 它工作得很好,直到我的SQL字符串從改變選擇*
從公司到SQL - 的OleDbCommand不改變SQL參數
query = "Select * From @1";
,然後做一切偉大請執行下列操作
query = "Select * From @1";
OleDbCommand Command = new OleDbCommand(query, sqlConnStr);
DataTable Table = new DataTable();
DataSet dataSet = new DataSet();
Table = null;
//Add Parameters
Command.Parameters.AddWithValue("@1", SQLTables.Company);
try
{
Command.ExecuteNonQuery();
adapter.SelectCommand = Command;
adapter.Fill(dataSet);
Table = dataSet.Tables[0];
}
catch (Exception e)
{
MessageBox.Show("A Error occured whilst trying to execute the command.\n" + e.Message);
}
return Table;
的DBMS不斷髮回「查詢不完整」 - 我假設Command
變量通過不改變霸發送串query
rameter從@1
到Company
這裏是一個片碼(礦),其中這確實工作。這是一個插入語句,而一個選擇 - 糾正我,如果我錯了,但它應該不是也與SELECT工作藏漢
private void MainActionsInsert(string Action, bool Checked)
{
OleDbCommand Command = new OleDbCommand("INSERT INTO MainActions Values (ID, Action, BoolValue)", DataBaseConnection);
//Add Parameters
Command.Parameters.AddWithValue("ID", GenerateID());
Command.Parameters.AddWithValue("Action", Action);
Command.Parameters.AddWithValue("BoolValue",Checked);
//Add Command
MainActionsAdapter.InsertCommand = Command;
//Execute Agains DataBase
Command.ExecuteNonQuery();
//Accept Changes
}
`
工作。親切的問候Markus – Markus
嘗試使用'?'而不是'@'per http://msdn.microsoft.com/en-us/library/system.data.oledb.oledbcommand.parameters.aspx –
現在我得到''錯誤試圖執行FROM子句「' – Markus