Вниз
Скачать: CL | DM;

EDatabaseError   Найти похожие ветки 

← →
Delphist2   (2010-03-30 15:08) [0]

Есть такое исключение, как EDatabaseError. Но как получить больше информацию об ошибке?


← →
Jeer ©   (2010-03-30 15:36) [1]

Зависит от Engine..

Для BDE можно было так:

function GetDBErrors_(E: Exception):integer;
begin
 if (E is EDatabaseError) then
    Result :=  (EDBEngineError(E).Errors[0].ErrorCode)
 else
   Result := 99999;
end;


← →
Delphist2   (2010-03-30 15:42) [2]

ADO, драйвер Jet


← →
Jeer ©   (2010-03-30 16:12) [3]


> Delphist2   (30.03.10 15:42) [2]
>
> ADO, драйвер Jet


Ну и смотри "ADO, драйвер Jet"


← →
Игорь Шевченко ©   (2010-03-30 17:40) [4]


> Но как получить больше информацию об ошибке?


по контексту


← →
oldman ©   (2010-03-30 18:22) [5]


> Delphist2   (30.03.10 15:08)  
> Есть такое исключение, как EDatabaseError.


Есть еще такая привычка писать код, где ОНО происходит.


← →
Delphist2   (2010-03-30 19:03) [6]


> Есть еще такая привычка писать код, где ОНО происходит.

Ну я вообще-то обычный upsert так делаю. Сначала insert, если исключение - то update.


← →
Anatoly Podgoretsky ©   (2010-03-30 19:19) [7]

E.Message


← →
Delphist2   (2010-03-30 19:27) [8]

Но e.message будет разным в разных ОС, если одна рус. др. - англ. Язык текста сообщения ведь тоже поменяется?


← →
oldman ©   (2010-03-30 19:35) [9]


> Сначала insert, если исключение - то update.


Это из какого учебника такой метод?


← →
oldman ©   (2010-03-30 19:36) [10]


> Delphist2   (30.03.10 19:27) [8]
> Но e.message будет разным в разных ОС, если одна рус. др.
>  - англ. Язык текста сообщения ведь тоже поменяется?


Смысл-то не поменяется.


← →
Anatoly Podgoretsky ©   (2010-03-30 19:42) [11]

> Delphist2  (30.03.2010 19:27:08)  [8]

Тебе нужны дополнительные сведенья, или ты просто так спрашивал?


← →
Anatoly Podgoretsky ©   (2010-03-30 19:42) [12]

> oldman  (30.03.2010 19:35:09)  [9]

Народный способ


← →
Delphist2   (2010-03-30 19:43) [13]

Конечно, код хотелось сделать лучше. Чтоб учитывалось больше различных вещей.


← →
Anatoly Podgoretsky ©   (2010-03-30 19:51) [14]

> Delphist2  (30.03.2010 19:43:13)  [13]

Ну так это одна из вещей, наряду с Errors и NativeError


← →
sniknik ©   (2010-03-30 19:56) [15]

> Народный способ
народный это сделать апдейт, и если количество обработанных записей = 0, то инсерт, ексепт оставить для эксептов. а это какой то зверский способ - как бы так, чтобы поломать все, что не понимаю...  

> Конечно, код хотелось сделать лучше.
код предоставленный в [0] идеален в своей суровой простоте... лучше невозможно.

> Чтоб учитывалось больше различных вещей.
например дома ли теща, и в каком доме ныне Юпитер... только зачем тебе это учитывать?


← →
Delphist2   (2010-03-30 19:57) [16]

А почитать есть где про это подробнее?


← →
Игорь Шевченко ©   (2010-03-30 20:00) [17]

sniknik ©   (30.03.10 19:56) [15]


> народный это сделать апдейт, и если количество обработанных
> записей = 0, то инсерт


народный - это сделать merge


← →
Jeer ©   (2010-03-30 20:07) [18]


> А почитать есть где про это


Ты так не шути - Весна на улице :)


← →
sniknik ©   (2010-03-30 20:17) [19]

> народный - это сделать merge
нет, это "родной", там где позволяет.


← →
Delphist2   (2010-03-30 20:23) [20]


> сделать апдейт, и если количество обработанных записей =
> 0, то инсерт

А каким кодом это делается?


← →
sniknik ©   (2010-03-30 20:23) [21]

в народном все таки должно быть немного от творчества...


← →
sniknik ©   (2010-03-30 20:25) [22]

> А каким кодом это делается?
обычным. никаких секретов, все есть в справке.


← →
Игорь Шевченко ©   (2010-03-30 22:53) [23]

sniknik ©   (30.03.10 20:23) [21]


> в народном все таки должно быть немного от творчества...


Детей Ивана Кулибина



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

Скачать: CL | DM;



Память: 0.49 MB
Время: 0.052 c
2-1271925649
trebufov
2010-04-22 12:40
2010.08.27
многострочный CheckListBox


3-1239426880
Роман
2009-04-11 09:14
2010.08.27
визуализация данных БД


2-1270041864
ford
2010-03-31 17:24
2010.08.27
Case of для строк


8-1204201324
ERT
2008-02-28 15:22
2010.08.27
PrintScreen


2-1267975056
berliod
2010-03-07 18:17
2010.08.27
Манифест




   Наверх