По-долу е моята SQL заявка:
select *
from Table
where col1 = @param1 and col2 = @param2
Сега искам да изпълня тази SQL заявка, но просто се интересувам да получа колони от заявката, а не каквито и да е записи.
Знам, че мога да манипулирам тази SQL заявка, като намеря и премахна всички параметризирани параметри, но просто си мисля, че има ли начин да игнорирам всички тези параметри и просто да изпълня (select * from Table
).
Ето как го правя в момента:
TCommand cmd = new TCommand();
cmd.CommandText = sqlQuery;
cmd.Connection = connection;
using (var reader = cmd.ExecuteReader())
{
reader.Read();
var columns = reader.GetSchemaTable().AsEnumerable()
.Select(col => col["ColumnName"].ToString())
.ToArray();
return columns;
}
Получавам тази грешка:
Трябва да декларира скаларната променлива "@param1"
Искам да игнорирам този параметър, докато изпълнявам SQL заявката. Има ли начин да кажа на ADO.NET да игнорира моя параметър на заявката и просто да изпълни заявката?