не подтверждаются транзакции.

Ремонт и восстановление баз данных InterBase, Firebird, Yaffil

Модераторы: kdv, Alexey Kovyazin

Ответить
Ugrael
Сообщения: 23
Зарегистрирован: 10 окт 2005, 12:16

не подтверждаются транзакции.

Сообщение Ugrael » 21 ноя 2005, 10:01

Доброго временит суток.
Столкунлся с такой проблемой-есть БД под FireBird 1.5 Дельфи 7 с обновлеными компонентами для работы с БД ФБ. Суть вопроса в том, что когда делаешь средствами дельфи edit записи через dbedit . Потом post, потом transaction.commit то транзакция не подтверждается. Переставлял все. в итоге выяснилось, что это сама база такая.
Создаю новую, чистую - все работает. На это не прохожит....
что можно подкрутить ?

kdv
Forum Admin
Сообщения: 6595
Зарегистрирован: 25 окт 2004, 18:07

Сообщение kdv » 21 ноя 2005, 10:41

что значит "не подтверждается"? Ругается как, или молча?
Ты просто что то не то делаешь, вот и все. Если ты в транзакции меняешь данные, и делаешь ЭТОЙ транзакции commit - то все созхраняется железобетонно.

Ugrael
Сообщения: 23
Зарегистрирован: 10 окт 2005, 12:16

Сообщение Ugrael » 21 ноя 2005, 11:04

Молча. После post изменения видны. Делаю commit и все возвращается. По поводу "железобетонно" - я тоже был так уверен.
Но вот создалась таблица как то криво ( ИМХО ).
Причем еще косяк - работает только диалект 1. Все делаю правильно. почему такакя уверенность ? на других базах и других компах эта же конструкция работает. Ресторе/бакуп делал. Не пойму в чем дело. :( и возможжности пересоздать базу уже нет.

kdv
Forum Admin
Сообщения: 6595
Зарегистрирован: 25 окт 2004, 18:07

Сообщение kdv » 21 ноя 2005, 13:30

ответить нечего. порча базы, еще какой-нибудь глюк, и т.п. Кроме тебя никто это объяснить не сможет, а багов таких нет (и не было).
при b/r база создается с нуля, и туда заливаются данные, заново. Диалект базы остается прежним.
Размер базы и таблицы какой? Если размер таблицы 36 гигабайт, то глюки будут, конечно, но в других случаях - вряд ли.

Ugrael
Сообщения: 23
Зарегистрирован: 10 окт 2005, 12:16

Сообщение Ugrael » 21 ноя 2005, 14:00

все.разобрался.виноват кончно же сам.
вкратце - создал уникальный и первичные ключи.
( вот здесь похоже была проблема - их не было )

все перекомпилил, пересоздал запросы в ДатаСетах и все заработало.
спасибо откликнувшимся.

Ответить