以下は私のSelect*関数のコードです-それはうまく機能し、SQL文字列をSelectFromCompany*
からに変更するまですべてうまくいきます
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
パラメータをから@1
に変更せずに文字列を送信していると思いますCompany
これが機能するコード(私のもの)です。これはselectではなくinsertステートメントです-間違っている場合は修正してくださいが、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
}
`