Я хочу, чтобы указать имя таблицы для запроса в качестве параметров команды, например, так:Как я могу предоставить имя таблицы для запроса в качестве параметра команды в Npgsql?
public class Foo
{
private const String myTableName = "mytable";
public void Bar()
{
NpgsqlCommand command = new NpgsqlCommand("SELECT * from :tableName", connection);
command.Parameters.Add(new NpgsqlParameter("tableName", DbType.String));
command.Parameters[0].Value = myTableName;
}
}
Это, кажется, в результате этого запроса: "SELECT * from E'mytable'"
, что приводит к ошибке (ум одинарные кавычки).
Нужно ли мне выполнять конкатенацию строк для этого? Это не имеет значения с точки зрения безопасности, так как имя таблицы не может быть изменено пользователем, но конкатенации для создания запросов SQL всегда дает мне ползает ...
Спасибо, Eric
Имена таблиц всегда постоянные. Благодарю. – EricSchaefer