Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / IBM DB2, WebSphere, IMS, U2, etc Новый топик    Ответить
 Ошибка записи  [new]
1313
Member

Откуда:
Сообщений: 8
Доброго дня всем!

Некая программа пытается записать в BASE1 в разные таблицы информацию из четырех текстовых файлов и возникает ошибка: UPD_BASE1:A transaktion is arleady active
В "соседней" конторе этот же софт в такую же базу в такой же конфигурации ОС(Linux)/DB2(9.7 ExpC)/Железо пишет нормально. Как поправить?

Благодарю.
17 июл 13, 15:40    [14578788]     Ответить | Цитировать Сообщить модератору
 Re: Ошибка записи  [new]
1313
Member

Откуда:
Сообщений: 8
Доброго дня всем!

Некая программа пытается записать в BASE1 в разные таблицы информацию из четырех текстовых файлов и возникает ошибка: UPD_BASE1:A transaction is already active
В "соседней" конторе этот же софт в такую же базу в такой же конфигурации ОС(Linux)/DB2(9.7 ExpC)/Железо(одинаковое) пишет нормально. Как поправить?

Благодарю.
17 июл 13, 18:30    [14579894]     Ответить | Цитировать Сообщить модератору
 Re: Ошибка записи  [new]
1313
Member

Откуда:
Сообщений: 8
Добрый вечер.

Как все таки "поймать" ошибку?
18 июл 13, 18:56    [14585929]     Ответить | Цитировать Сообщить модератору
 Re: Ошибка записи  [new]
Mark Barinstein
Member

Откуда: Москва
Сообщений: 4946
1313
Как все таки "поймать" ошибку?
Здравствуйте.

Может, вы всё же скажете, что это за некая программа, что именно (IBM DB2, WebSphere, IMS, U2, etc, некая программа) выдаёт такое сообщение, код ошибки?
18 июл 13, 19:35    [14586062]     Ответить | Цитировать Сообщить модератору
 Re: Ошибка записи  [new]
1313
Member

Откуда:
Сообщений: 8
Добрый день.

Это самописная (на Delfi) (не мной) программа, номера ошибки нет

К сообщению приложен файл (noname.doc - 13Kb) cкачать
19 июл 13, 12:42    [14589117]     Ответить | Цитировать Сообщить модератору
 Re: Ошибка записи  [new]
CawaSPb
Member

Откуда: Питер/Москва/Wroclaw
Сообщений: 1091
1313,

Включите на клиенте (там, где работает Delphi приложение) CLI tracing, посмотрите, что происходит в момент ошибки.

Весьма вероятно, проблема во внутренней логике самого приложения (например, проявляющейся на чуть более быстрых/медленных процессорах), и к работе базы это не имеет никакого отношения.
19 июл 13, 13:26    [14589438]     Ответить | Цитировать Сообщить модератору
 Re: Ошибка записи  [new]
Mark Barinstein
Member

Откуда: Москва
Сообщений: 4946
1313
Это самописная (на Delfi) (не мной) программа, номера ошибки нет
Здравствуйте.

Тогда надо смотреть в документацию этой программы или связаться с автором, т.к. это не ошибка DB2, а какое-то сообщение программы, возможно в ответ на какую-то ошибку DB2 или просто контроль внутренней логики.

Без этого вы можете только попробовать включить трассировку соединения на клиенте и попытаться понять, что получает приложение от DB2.
Tracing the CLI driver by using the db2cli.ini file
19 июл 13, 13:39    [14589538]     Ответить | Цитировать Сообщить модератору
 Re: Ошибка записи  [new]
1313
Member

Откуда:
Сообщений: 8
Добрый день.
CawaSPb , Mark Barinstein
Ок! В понедельник буду смотреть.

Благодарю!!!
20 июл 13, 12:56    [14593022]     Ответить | Цитировать Сообщить модератору
 Re: Ошибка записи  [new]
1313
Member

Откуда:
Сообщений: 8
Добрый вечер.

С помощью трассировки отловил ошибку, оказалось недостаточная длина символьного(varchar) поля в некоторых таблицах, увеличил - запись пошла, т.е. приложение неверно интерпретировало сообщения сервера DB2. И все же интересует вопрос - можно ли управлять транзакциями из приложения (извиняюсь, если что-то не так сформулировал)?
24 июл 13, 18:18    [14612721]     Ответить | Цитировать Сообщить модератору
 Re: Ошибка записи  [new]
Mark Barinstein
Member

Откуда: Москва
Сообщений: 4946
1313
И все же интересует вопрос - можно ли управлять транзакциями из приложения (извиняюсь, если что-то не так сформулировал)?
Здравствуйте.

Можно.
24 июл 13, 18:48    [14612843]     Ответить | Цитировать Сообщить модератору
 Re: Ошибка записи  [new]
1313
Member

Откуда:
Сообщений: 8
Mark Barinstein
1313
И все же интересует вопрос - можно ли управлять транзакциями из приложения (извиняюсь, если что-то не так сформулировал)?
Здравствуйте.

Можно.


Доброе утро.

А не "ткнете" в документацию?
25 июл 13, 09:38    [14614588]     Ответить | Цитировать Сообщить модератору
 Re: Ошибка записи  [new]
Mark Barinstein
Member

Откуда: Москва
Сообщений: 4946
1313
А не "ткнете" в документацию?

Здравствуйте.

Зависит от того, на чём написано приложение.
Если это CLI/ODBC приложение, то если вы хотите управлять транзакциями сами, то выставляете свойство соединения
SQL_ATTR_AUTOCOMMIT в SQL_AUTOCOMMIT_OFF (или AutoCommit в 0 в конфигурационном файле) и завершаете транзакцию вызовом SQLEndTran. Транзакции начинаются неявно первым же запросом после SQLEndTran. В случая включенного автокоммита SQLEndTran с соотв. атрибутом после каждой команды выполняется неявно.

Но, как правило, если вы программируете в какой-то среде типа Delfi, то вы не используете эти функции напрямую, а пользуетесь соответствующими методами объектов, внутри которых и вызываются эти ODBC функции.
25 июл 13, 12:17    [14615441]     Ответить | Цитировать Сообщить модератору
 Re: Ошибка записи  [new]
1313
Member

Откуда:
Сообщений: 8
Mark Barinstein,

Доброе утро.
Благодарю!
26 июл 13, 10:03    [14620018]     Ответить | Цитировать Сообщить модератору
Все форумы / IBM DB2, WebSphere, IMS, U2, etc Ответить