Во-первых, поскольку вы имеете дело с безопасностью, обязательно используйте параметризованную хранимую процедуру вместо специального запроса, чтобы помочь предотвратить взлом SQL-инъекций. Хранимые процедуры также работают лучше, чем специальные запросы, в целом традиционно.
После этого вы спрашиваете, как использовать ADO .NET для использования SqlDataReader или OleDbDataReader для возврата результатов, или просто что учитывать?