powered by simpleCommunicator - 2.0.59     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Firebird, InterBase [игнор отключен] [закрыт для гостей] / обновление структуры
12 сообщений из 12, страница 1 из 1
обновление структуры
    #38902362
sergq
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Здравствуйте.

Вопрос думаю простой.

имеется скрипт обновления структуры. Некоторые операторы могут быть выполнены только после реконнекта.

Предположим скрипт без реконнектов. Стартуем транзакцию. Выполняем скрип. подтверждаем. Все ок.
Допустим по какой то причине один из операторов обломился. Транзакцию откатили. База в исходном виде.

А вот как быть если есть в скрипте реконнекты? выполнили в транзакции 5 операторов. Реконнетились. На 7 операторе облом.
Как вернуть базу в изначальное состояние, чтобы исправив проблему накатить скрипт еще раз?


Спасибо
...
Рейтинг: 0 / 0
обновление структуры
    #38902374
Мимопроходящий
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Hello, Sergq!
You wrote on 12 марта 2015 г. 13:27:40:

Sergq> Как вернуть базу в изначальное состояние,
как засунуть желток обратно в скорлупу разбитого яйца
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
обновление структуры
    #38902380
чччД
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
sergq...
Как вернуть базу в изначальное состояние, чтобы исправив проблему накатить скрипт еще раз?


Спасибо

Например, из бэкапа.
...
Рейтинг: 0 / 0
обновление структуры
    #38902381
Фотография o_v_a
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
1) Вернуть базу из бэкапа, который сделать перед накатыванием скрипта.
2) Сгенерировать и выполнить разностный скрипт между неудачно проапгрейженной "недобазой" и метаданными, снятыми с базы перед накатыванием скрипта.
...
Рейтинг: 0 / 0
обновление структуры
    #38902390
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
sergqКак вернуть базу в изначальное состояние, чтобы исправив проблему накатить
скрипт еще раз?
Восстановить базу из бэкапа, который ты, конечно же, сделал перед началом всей этой катавасии.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
обновление структуры
    #38902397
Фотография zirra
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
sergq> Как вернуть базу в изначальное состояние, чтобы исправив проблему накатить скрипт еще раз?
Фарш не возможно провернуть назад...
И мясо из котлет не восстановишь!..
почти А.Б.Пугачёва


--
Vladimir A.Bakhvaloff
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
обновление структуры
    #38902413
Фотография o_v_a
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Предпочтительнее. понятное дело, из бэкапа восстановить.
Но ежели бэкап не сделал, но есть любой давности и нужной структуры базы, то выкатывай в другой файл базу из имеющегося бэкапа и генерируй разностный скрипт между этой базой и неверно обновлённой.
Это при условии, конечно, что не было в скрипте обновления всяких вставок/удаления записей. Операции с данными вручную исправляй.
...
Рейтинг: 0 / 0
обновление структуры
    #38902450
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
sergqНекоторые операторы могут быть выполнены только после реконнекта.

Не бывает в природе таких операторов. Как-то ты неправильно составляешь скрипт или
выполняешь его. На всё достаточно коммита и освобождения хэндлов.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
обновление структуры
    #38903156
YuRock
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dimitry Sibiryakov,
Бывают. Изменения ключей ПК без реконнекта не всегда проходят. Делаешь удаление старого пк, добавляешь поле, заполняешь его данными, создаешь новый пк с этим полем - и тут обычно проблемы (до 2.1.1 включительно были это точно)
...
Рейтинг: 0 / 0
обновление структуры
    #38903182
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
YuRockи тут обычно проблемы
Коммититься надо после каждого шага. Как я и говорил. И запросы освобождать.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
обновление структуры
    #38903184
YuRock
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dimitry Sibiryakov,

Не помогает. Завтра будет время - выложу тест. базу и скрипт. Может и на текущих версиях такое - за одно посмотрим)
...
Рейтинг: 0 / 0
обновление структуры
    #38903795
YuRock
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Не получилось у меня повторить.
Предполагаю, что раньше, когда получалось, у меня где-то затесался CommitRetain (время от времени бью себя по лбу граблями для профилактики, чтобы взбодриться).
...
Рейтинг: 0 / 0
12 сообщений из 12, страница 1 из 1
Форумы / Firebird, InterBase [игнор отключен] [закрыт для гостей] / обновление структуры
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]