2016-12-13 3 views
0

У меня есть хранимая процедура, которая делает много вещей на основе того, соответствует ли пароль человека критериям. Мне не нужно ничего возвращать. Просто выполните процедуру.Я хочу, чтобы SqlCommand ничего не возвращал, просто сделайте

Я смотрел THIS и кажется, что все расширения Execute(blah) возвращают что-то. Есть ли Execute(blah) для SqlCommand, который просто выполняет процедуру и ничего не возвращает?

+5

'ExecuteNonQuery()' будет просто возвращать количество затронутых строк, на которые вы можете игнорировать. Циклы обратной связи - это, как правило, хорошая вещь. – Plutonix

+4

'ExecuteNonQuery' выполнит запрос и возвращает количество затронутых строк. Вы можете вызвать этот метод без присвоения возвращаемого значения. просто 'command.ExecuteNonQuery()' – Fabio

+0

Я действительно использовал это. Хорошо. Отлично! Спасибо –

ответ

4

Вы можете использовать ExecuteNonQuery. Он вернет количество затронутых строк, просто не назначайте его.

 using (var conn = new SqlConnection("YOUR CONNECTION STRING")) 
     { 
      using (var command = new SqlCommand("YOUR PROCEDURE NAME", conn)) 
      { 
       command.CommandType = CommandType.StoredProcedure; 
       conn.Open(); 
       command.ExecuteNonQuery(); 
      } 
     } 
2

Я думаю, вы могли бы найти инструкцию «SET NOCOUNT».

https://msdn.microsoft.com/en-us/library/ms189837.aspx

Это предотвращает Транзакцию и хранимые процедуры от возвращения дополнительных сообщений о том, что он сделал.

+0

сайт не найден –

+1

повторите попытку, следует отсортировать его сейчас. – pacreely

+0

, так что он входит в мой SP. интересно –

 Смежные вопросы

  • Нет связанных вопросов^_^