powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Проектирование БД [игнор отключен] [закрыт для гостей] / Обновления, патчи, как это реализуется правильно.
14 сообщений из 14, страница 1 из 1
Обновления, патчи, как это реализуется правильно.
    #35215898
Fixin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Допустим я хочу разрабатывать программу, к которой прикручена база данных.
Я веду учет билдов (версий) программы. Ну допустим просто номера билдов 1,2,3, .....
Так вот, в некоторых билдах в базу данных будут вноситься изменения.
Получается, что я должен смотреть какой версии текущая БД пользователя, и если например 20-я, то я запускаю изменения в базе данных при переходе с 20й на 21-ю, потом с 21 на 22 и так до победного конца.
С другой стороны, если пользователь создает новую базу, у меня должна быть описана структура новой базы данных.
т.е. получается некоторое дублирование - я должен описывать структуру БД и для новых пользователей и для старых.
Как это грамотно разруливается, как это принято разруливать?
...
Рейтинг: 0 / 0
Обновления, патчи, как это реализуется правильно.
    #35217122
egorych
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
почему бы также не вести учёт версий БД? и соответствий версии клиента и версии БД?
...
Рейтинг: 0 / 0
Обновления, патчи, как это реализуется правильно.
    #35217139
change_dump
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Добавь в базу данных таблицу соответствия версий на БД и на клиентских машинах. При старте клиента проверяй соответствие. Если не соответствует, обновляем клиент.
...
Рейтинг: 0 / 0
Обновления, патчи, как это реализуется правильно.
    #35217194
Naf
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Я бы не заморачивался с этим. Хранил бы отдельно скрипты патчей по переходу к очередным версиям и отдельно скрипт последней версии.
...
Рейтинг: 0 / 0
Обновления, патчи, как это реализуется правильно.
    #35217253
change_dump
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
NafЯ бы не заморачивался с этим. Хранил бы отдельно скрипты патчей по переходу к очередным версиям и отдельно скрипт последней версии.
Один раз написал, отладил теперь использую практически во всех своих проектах.
...
Рейтинг: 0 / 0
Обновления, патчи, как это реализуется правильно.
    #35217274
Naf
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
change_dump NafЯ бы не заморачивался с этим. Хранил бы отдельно скрипты патчей по переходу к очередным версиям и отдельно скрипт последней версии.
Один раз написал, отладил теперь использую практически во всех своих проектах.
Так это ты про обновление клиента, а он про обновление базы.
...
Рейтинг: 0 / 0
Обновления, патчи, как это реализуется правильно.
    #35217537
egorych
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Naf change_dump NafЯ бы не заморачивался с этим. Хранил бы отдельно скрипты патчей по переходу к очередным версиям и отдельно скрипт последней версии.
Один раз написал, отладил теперь использую практически во всех своих проектах.
Так это ты про обновление клиента, а он про обновление базы.одно другому не мешает. подход change_dump одиноко хорош что при обновлении клиента, что при обновлении БД. сложности могут возникнуть, если к одной БД цепляются несколько разнличных (по функционалу) приложений
...
Рейтинг: 0 / 0
Обновления, патчи, как это реализуется правильно.
    #35217707
change_dump
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
При запуске клиента происходит обязательная проверка на возможность работы и в случаи не совпадения происходит попытка произвести обновление, если это не удается клиент просто не включается. Более опасная ситуация когда админ накатывает, скрипит не через наш софт, а самостоятельно при не отключенных клиентах. Вот тут могут быть не предсказуемые глюки (не сколько раз были шибко умные админы).
...
Рейтинг: 0 / 0
Обновления, патчи, как это реализуется правильно.
    #35321358
Fixin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
change_dumpПри запуске клиента происходит обязательная проверка на возможность работы и в случаи не совпадения происходит попытка произвести обновление, если это не удается клиент просто не включается. Более опасная ситуация когда админ накатывает, скрипит не через наш софт, а самостоятельно при не отключенных клиентах. Вот тут могут быть не предсказуемые глюки (не сколько раз были шибко умные админы).
Господи! Речь идет об обновлении БД а не клиента.
Клиента обновлять проблем нет.
А вот базу - нужные колонки убрать, нужные добавить!!!
...
Рейтинг: 0 / 0
Обновления, патчи, как это реализуется правильно.
    #35322595
FixinГосподи! Речь идет об обновлении БД а не клиента.
Клиента обновлять проблем нет.
А вот базу - нужные колонки убрать, нужные добавить!!!
А в это время, например, часть логики "старого" клиента "закладывается" именно на существование этих (удаляемых) колонок... Пока в сети есть "старые" клиенты поля (столбцы/колонки) удалять нельзя!!!
...
Рейтинг: 0 / 0
Обновления, патчи, как это реализуется правильно.
    #35322670
_Kostyan_
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Что ты хочешь? у тебя одновременно поднято несколько БД с разными версиями и ты ими торгуешь, причем || апгрейдишь разные БД? (тут я тебе не помогу)

или у тебя 1 (ОДНА) БД - и к ней конн. пользователи с разных клиентов?
для 2-ого случая тебе все расписали. в БД есть таблица "версии", можно 1 строка, можно несколько, и пользователь проверяет: совпадают-ли версии БД и клиента. тот ф-ал, что описан выше - подходит.
...
Рейтинг: 0 / 0
Обновления, патчи, как это реализуется правильно.
    #35323337
Фотография softwarer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Fixinт.е. получается некоторое дублирование - я должен описывать структуру БД и для новых пользователей и для старых. Как это грамотно разруливается, как это принято разруливать?
Разруливается это применением вменяемого CASE средства, скажем Oracle Designer. Вы описываете структуру БД в одном месте и по этому описанию можете сгенерировать как скрипт создания с нуля, так и скрипт перехода от версии X к версии X+1.

Больший интерес вызывает эта проблема применительно к данным.
...
Рейтинг: 0 / 0
Обновления, патчи, как это реализуется правильно.
    #35323648
Fixin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
softwarer Fixinт.е. получается некоторое дублирование - я должен описывать структуру БД и для новых пользователей и для старых. Как это грамотно разруливается, как это принято разруливать?
Разруливается это применением вменяемого CASE средства, скажем Oracle Designer. Вы описываете структуру БД в одном месте и по этому описанию можете сгенерировать как скрипт создания с нуля, так и скрипт перехода от версии X к версии X+1.

Больший интерес вызывает эта проблема применительно к данным.

гм, значит общепринятой практики нет, только юзание CASE. ;-)

Да, еще раз уточню.

Я поставляю покупателям обновления клиентов и с некоторыми из версий должна меняться структура БД (колонки там добавляться, таблицы, индексы)... Контролировать соответствие БД и версии клиента я могу, суть в том, как грамотно таблицы и индексы обновлять!
...
Рейтинг: 0 / 0
Обновления, патчи, как это реализуется правильно.
    #35323765
Фотография !!!
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Fixinгм, значит общепринятой практики нет, только юзание CASE. ;-)
Это и есть общепринятая практика
FixinДа, еще раз уточню.

Я поставляю покупателям обновления клиентов и с некоторыми из версий должна меняться структура БД (колонки там добавляться, таблицы, индексы)... Контролировать соответствие БД и версии клиента я могу, суть в том, как грамотно таблицы и индексы обновлять!Запуском скрипта, приводящего текущее состояние БД в новое.
...
Рейтинг: 0 / 0
14 сообщений из 14, страница 1 из 1
Форумы / Проектирование БД [игнор отключен] [закрыт для гостей] / Обновления, патчи, как это реализуется правильно.
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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