Du kan inte paramatisera en identifierare (tabellnamn eller fältnamn) i MySQL, men du kan undvika dem med backticks.
Följande fråga kommer att köras säkert men ger ett fel eftersom tabellen inte existerar (såvida du inte av en konstig slump faktiskt har en tabell som heter så här):
SELECT * FROM `users; DROP TABLE users;`;
I grund och botten kan du använda dynamiska namn eller fält så länge de är inneslutna i backticks. För att förhindra SQL-injektion på detta sätt är allt du behöver göra att först ta bort eventuella backticks:
tableName = tableName.Replace("`", "");
string commandText = "SELECT COUNT(*) FROM `" + tableName + "`";