Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Базы";
Текущий архив: 2004.12.05;
Скачать: [xml.tar.bz2];

Вниз

Сообщения от SQL Server   Найти похожие ветки 

 
avkar   (2004-11-02 21:19) [0]

Подскажите плиз как получить сообщения от SQL Server о результате выполнения запроса, типа "New login created."
или "(1 row(s) affected)", которые в SQL Analyzere можно спокойно прочитать. Также хотелось бы научится получать код ошибки в SQL, процедуру и строку в которой произошла ошибка, чтобы дать пользователю сообщение типа "Server: Msg 50000, Level 16, State 1, Procedure buro_sp_TEST, Line 12".
Пользуюсь ADO компонентами.
Знаю что в ADO есть коллекция Errors, где все это должно хранится, но получить доступ к ней из DELPHI не получается.
Благодарен за ответ.


 
Nikolay M. ©   (2004-11-03 10:03) [1]

http://www.sql.ru/forum/actualthread.aspx?tid=23884&pg=-1&hl=print+raiseerror


 
avkar   (2004-11-03 19:07) [2]

А в дельфях как можно обратится к элементам в коллекции
TADOConnection.Errors. Хотя бы пример какой-нить.


 
avkar   (2004-11-03 20:48) [3]

Заработало:
   DM.ADOConnetct.Errors.Refresh;
   for i := 0 to DM.ADOConnect.Errors.Count - 1 do
   begin
     ShowMessage(DM.ADOConnect.Errors.Item[i].Description);
   end;
но одна беда: в коллекцию Errors вываливаются ошибки и сообщения о результате запроса, только в том случае если в SQL сгенерирована ошибка.
А если ошибки на серваке не произошла, то сообщения о результате запроса не вываливаются в Errors.
Может кто подскажет как получить сообщения о результате запроса???


 
sniknik ©   (2004-11-03 21:04) [4]


   Recordset:= ADOCommand1.Execute(RecordsAffected, EmptyParam);
   if Recordset.State=1 then RichEdit2.Lines.Add(IntToStr(ErrCount)+"  Выполнено применительно к "+IntToStr(Recordset.RecordCount)+" записям")
   else RichEdit2.Lines.Add(IntToStr(ErrCount)+"  Выполнено применительно к "+IntToStr(RecordsAffected)+" записям. (no recordset)");


только надо это прогнать для всех рекордсетов в пакете (Recordset:= Recordset.NextRecordset(RecordsAffected);).


 
avkar   (2004-11-04 20:39) [5]

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


 
sniknik ©   (2004-11-04 20:43) [6]

> Не подойдет для запросов, которые не возвращают набор данных.
хорошо не знал когда делал, так бы и забросил нафик, а так работает! ;о)



Страницы: 1 вся ветка

Форум: "Базы";
Текущий архив: 2004.12.05;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.45 MB
Время: 0.036 c
14-1100606767
Cerberus
2004-11-16 15:06
2004.12.05
Прога


6-1095843465
Неуч
2004-09-22 12:57
2004.12.05
Выбор сетевого интерфейса.


1-1100672355
Azazello
2004-11-17 09:19
2004.12.05
Выделение ячейки в StringGrid


9-1088438773
Evgeniy_K
2004-06-28 20:06
2004.12.05
VSync


1-1100799817
Shark
2004-11-18 20:43
2004.12.05
Интерпритация выражений





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский