SqlParameter erlaubt keinen Tabellennamen - andere Optionen ohne SQL Injection Attack?

Ich habe einen Laufzeitfehler erhalten"Must declare the table variable "@parmTableName". Die Angabe des Tabellennamens als SQL-Parameter in der SQL-Anweisung ist nicht zulässig.

Gibt es eine bessere Option oder einen besseren Vorschlag, als einen SQL-Injektionsangriff zuzulassen? Ich möchte dieses C # -Skript nicht für SQL-Anweisungen ausführen" DELETE FROM " + tableName + " ";

using(var dbCommand = dbConnection.CreateCommand())
{
   sqlAsk = "";
   sqlAsk += " DELETE FROM @parmTableName ";
   sqlAsk += " WHERE ImportedFlag = 'F' ";

   dbCommand.Parameters.Clear();
   dbCommand.Parameters.AddWithValue("@parmTableName", tableName);

   dbConnection.Open();

   rowAffected = dbCommand.ExecuteNonQuery();
}

Antworten auf die Frage(3)

Ihre Antwort auf die Frage