Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Получить текст с сообщением об ошибке.


Страницы:   1 2

SergP. ©   (2006-09-04 12:32:00) 

ADO, Oracle
Если при выполнении некой PL/SQL процедуры:


with TADOCommand.Create(Application) do
   try
       Connection:=ADConn;
       CommandText:='begin ....... ; end;';
       Execute;
   finally
     free;
   end;


возникло исключение, то можно ли получить текст с соответствующим Оракловским сообщением?


SergP.   (2006-09-04 17:30:00) [1]

> [32] ANB ©   (04.09.06 17:21)
>
> > SergP.   (04.09.06 17:19) [31]
>
> Вообще то хорошим подходом было бы ошибки исправить, а не
> скидывать юзеру, который их все равно не поймет :)
> Эта ошибка означает, что вставляемое значение не лезет в
> поле таблицы.


Ну во первых у каждого такого "юзера" своя база со своими ошибками, да и половина этих "юзеров" - такие же сисадмины как и я.


SergP.   (2006-09-04 17:26:00) [2]

> [30] ANB ©   (04.09.06 17:17)
>
> У нас траффик ограничен.


Хм... Жаль...

> [30] ANB ©   (04.09.06 17:17)
>  А вместо мыла вообще лотус. Так
> что пока облом.


Ну не обязательно мыло, можно было бы и по ftp, если бы не:
> [30] ANB ©   (04.09.06 17:17)
>
> У нас траффик ограничен.


Ладно... С АДО проблема решена. А что касается ОДАК - может когда-нить найду что-то и переделаю...


ANB   (2006-09-04 17:21:00) [3]


> SergP.   (04.09.06 17:19) [31]

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


SergP.   (2006-09-04 17:19:00) [4]

> [28] sniknik ©   (04.09.06 17:12)


Просто в цикле несколько раз выполняется процедура, и иногда при некоторых входных параметрах возникают подобные сообщения
> ERROR at line 1:
> ORA-01401: inserted value too large for column
> ORA-06512: at "XXXXX.XXXXXX", line 983
> ORA-06512: at line 2

вот я и хотел сделать чтобы поскладывать их в лог, чтобы юзер потом мог его просмотреть и проанализировать...
Что касается ADO, то мне [14] parovoZZ ©   (04.09.06 13:45) помогло...


ANB   (2006-09-04 17:17:00) [5]


> Может по мылу? glukmaker@gmail.com

У нас траффик ограничен. А вместо мыла вообще лотус. Так что пока облом.


SergP.   (2006-09-04 17:12:00) [6]

> [27] ANB ©   (04.09.06 17:07)
>
> > А почему ссылка не поможет?
>
> Потому что по ней качать если и дадут, то триал. А так бы
> лично дал . . .


Может по мылу? glukmaker@gmail.com


sniknik   (2006-09-04 17:12:00) [7]

> Но мне нужно не просто обработать ошибку, а узнать что за ошибка...
> ну типа когда я выполняю процедуру в SQLPlus я получаю:
> ERROR at line 1:
> ORA-01401: inserted value too large for column
> ORA-06512: at "XXXXX.XXXXXX", line 983
> ORA-06512: at line 2
> Вот этот текст можно получить или нет?
что провайдер передаст то и получиш (если это ошибка а не сообщение, вот его получить проблемнее)
не знаю с ораклом, проверить не могу но от FB на неверный запрос
SELECT * FROM TABLE1
WHERE ID IS Nil
например получаю
EOleException:

Dynamic SQL Error
SQL error code = -104
Token unknown - line 2, char 13
Nil

все правильно, между прочим. наверняка и для оракла будет также, проверить ка говорил не могу, счас не оракл стоит, но могу послать для самостоятельного теста прогу на ADO.


ANB   (2006-09-04 17:07:00) [8]


> А почему ссылка не поможет?

Потому что по ней качать если и дадут, то триал. А так бы лично дал . . .


SergP.   (2006-09-04 17:02:00) [9]


> [24] ANB ©   (04.09.06 16:50)
>
> > Служил. :-)
>
> И что, неужели армия вас не научила, что это хреновый подход
> ?
> Нет, если, конечно, согласно ТЗ нужно писать на ADO+Oracle
> и заказчик/начальство никак не хочет использовать ничего
> другого - это одно. А зачем искать себе проблемы добровольно
> ?


Да нет. Заказчика нет. Пишу по собственной инициативе, чтобы облегчить жизнь себе и удаленным сотрудникам.
Да и щас я пока пишу на АДО, но стараюсь так чтобы если вдруг найду нормальные ODAC компоненты, то чтобы переделка не заняла много времени.

> [25] ANB ©   (04.09.06 16:51)
>
> > Если не трудно, дайте ссылку на 100% одаковский компонент.
>
> К сожалению, ссылка не поможет. Вы в москве ?


К сожалению нет... Даже не в России...

А почему ссылка не поможет?


ANB   (2006-09-04 16:51:00) [10]


> Если не трудно, дайте ссылку на 100% одаковский компонент.

К сожалению, ссылка не поможет. Вы в москве ?


ANB   (2006-09-04 16:50:00) [11]


> Служил. :-)

И что, неужели армия вас не научила, что это хреновый подход ?
Нет, если, конечно, согласно ТЗ нужно писать на ADO+Oracle и заказчик/начальство никак не хочет использовать ничего другого - это одно. А зачем искать себе проблемы добровольно ?


SergP.   (2006-09-04 16:43:00) [12]

> [22] ANB ©   (04.09.06 15:39)
> > SergP.   (04.09.06 15:20) [21]
>
> Ты точно по одаковской TOraSession кликаешь ?


А черт ее знает... Я по поисковикам по запросу 'Компоненты Delphi прямого доступа Oracle' понаходил несколько таких компонентов, понаставлял.
Если не трудно, дайте ссылку на 100% одаковский компонент.
А то у меня есть подозрение что в инете очень много чего называется компонентами прямого доступа лишь по той причине что позволяют работать без BDE...


> Вы, часом, срочную в армии не служили ?


Служил. :-)


ANB   (2006-09-04 15:39:00) [13]


> SergP.   (04.09.06 15:20) [21]

Ты точно по одаковской TOraSession кликаешь ? Насколько я помню, там есть галка Net и возможность вводить хост, сид и IP. Короче, у этого компонента есть аналог строки коннекта, в которую он и кидает все, что ты написала в отдельных свойствах. Через нее можно работать, если не хочешь указывать TNS. (только нафига это нужно). Вообще, странная идея уходить с имеющихся нативных компонентов на универсальные только из-за того, что не смог подключиться напрямую.
Это называется создавать себе трудности и мужественно их преодолевать. Вы, часом, срочную в армии не служили ?


SergP.   (2006-09-04 15:20:00) [14]

> [20] ANB ©   (04.09.06 14:34)
>
> > SergP.   (04.09.06 14:07) [19]
>
> Кликни два раза по TOraSession и узнаешь много интересного.
> :)


Кликнул. открылся ихний Экплорер, в котором ничего особого нет, хотя если попытаться залогиниться то предлагает ввести логин/пароль и базу, где предлагается на выбор то что у меня прописано в tnsnames.ora


ANB   (2006-09-04 14:34:00) [15]


> SergP.   (04.09.06 14:07) [19]

Кликни два раза по TOraSession и узнаешь много интересного. :)


SergP.   (2006-09-04 14:07:00) [16]

> Кто сказал, что его там нельзя указать ?

Я там такого не нашел


ANB   (2006-09-04 14:04:00) [17]


> Откуда он тогда должен знать с чем я хочу работать, если
> SID , хост и порт там не указывать и tnsnames не используется?
>

Кто сказал, что его там нельзя указать ?


SergP.   (2006-09-04 13:54:00) [18]

> [14] parovoZZ ©   (04.09.06 13:45)
> Подойдёт или нет?
>
> ADOConnect.Errors.Get_Item (0).NativeError;
> ADOConnect.Errors.Item[0].Description;


Оно.
Спасибо!!!


SergP.   (2006-09-04 13:51:00) [19]

> [14] parovoZZ ©   (04.09.06 13:45)
> Подойдёт или нет?
>
> ADOConnect.Errors.Get_Item (0).NativeError;
> ADOConnect.Errors.Item[0].Description;


Щас проверим...


SergP.   (2006-09-04 13:51:00) [20]

> [13] ANB ©   (04.09.06 13:43)
>
> > находил такие компоненты для прямого доступа
>
> ОДАК позволяет работать без клиента или с клиентом, но без
> использования tnsnames.


Откуда он тогда должен знать с чем я хочу работать, если SID , хост и порт там не указывать и tnsnames не используется?


Страницы:   1 2

Наверх

Титульная страница Поиск, карта сайта Написать письмо