Мудрец
Зарегистрирован: 13 January 2003
Сообщения: 1393
Примеры кода: 5
|
RE[2]: Не работает InfoMessage |
08 October 2004 16:21 |
|
|
|
|
Привет! Задача такая: узнать сколько было обработано(например, удалено) записей в таблице. Попробовал прикрутить для этого событие коннекции InfoMessage, но желаемого результата не достиг. Может быть кто знает как это сделать по другому?
(Set Nocount off/on -как мертвому припарка)
Вот код.
string ConnectionString = "Server=dmgmsserver2000;uid=sa;pwd=345;Database=manydata";
string CommandText = "delete from people where p_id > 104";
SqlConnection sqlConn = new SqlConnection(ConnectionString);
SqlCommand cmd = new SqlCommand(CommandText,sqlConn);
sqlConn.InfoMessage+=new SqlInfoMessageEventHandler(sqlConn_InfoMessage);
sqlConn.Open();
cmd.ExecuteReader();
sqlConn.Close();
private void sqlConn_InfoMessage(object sender, SqlInfoMessageEventArgs e)
{
MessageBox.Show(e.Message);
}
испoльзуй прoцедуру, @@rowcount и output parameter
и ExecuteNonQuery естественнo
Не всё так просто... запрос может выглядеть так
select top 3 * from emps
delete from emps where 1=2
и меcсаджы от запроса должны быть такими:
(3 row(s) affected)
(0 row(s) affected)
Кароче, запрос пишет сам пользователь. Прямо как в Query Analizer'e
|
|