понедельник, 10 мая 2010 г.

С# select запрос, возвращающий одно значение

С ситуацией, когда нужно получить из таблицы одно поле, зная другое встречается довольно часто. Например, при написании программы, работающей с MsSQL где запрещены подзапросы в insert запросе сплошь и рядом нужно отдельным запросом получать id по имени или имя по id, поэтому я решила упростить себе эту рутинную задачу и написала процедуру для выполнения select запроса, который заведомо должен вернуть один результат.

  public string one_result_query(string query, SqlConnection connection)
  //Процедура выполнения SQL запроса, возвращающего один результат 
  //например чтобы узнать наименование по ид или наоборот
  //возвращает этот результат в виде строки
  {
  SqlCommand myCommand = new SqlCommand(query, connection);
  myCommand.Connection.Open();
  object q_result = myCommand.ExecuteScalar();
  myCommand.Connection.Close();
  myCommand.Dispose();
  return q_result.ToString();
  }

Кстати, в одном из старых постов я уже писала подобную процедуру для запроса, который не должен возвращать результата (такой как delete, update, insert)

1 комментарий:

Анонимный комментирует...

спасибо