Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.12.05;
Скачать: CL | DM;

Вниз

Сообщения от 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;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.044 c
14-1100510601
Гайцы-Газазад
2004-11-15 12:23
2004.12.05
Обращение к любителям политических диспутов


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


6-1096535165
inkarik
2004-09-30 13:06
2004.12.05
Передача HTML- файлов с вложением


9-1091467989
P@uk
2004-08-02 21:33
2004.12.05
Движение и торможение


1-1101296922
denis24
2004-11-24 14:48
2004.12.05
top,left