|
FB 2.5 Переименовать объекты базы данных и их зависимости
|
|||
---|---|---|---|
#18+
Добрый вечер! Мне в наследство досталось база данных firebird с примерно 200 таблицами и 1000 psql процедурами. В данные момент в базе очень не интуитвные название таблиц, полей и PSQL процедур. Мы хотим сделать небольшой рефакторинг и подправить в первую очередь название таблиц и их полей. Изменить название таблиц и полей не так просто, потому как у множество из них существуют зависимости, так как они используются в процедурах, триггерах и view. Чтобы все подправить руками, уйдет огромное количество времени. поэтому может есть какое-то решение, которое при изменение название таблиц и полей, меняет и название во всех объектов, которые их используют, приготовив соответственны sql скрипт. Я нашёл InterBase/Firebird Development Studio и их решение как раз эту проблему решает. Вот линк http://www.sqlly.com/features.html Но похоже, что этот продукт уже довно неподдержеваетса и я получаю access violation при генераций соответствующего скрипта. Поэтому может ктото может посоветовать другое решение или дать другой полезный совет. Альтернативно мы даже думали, что можно пытаться такой парсер написать самим. Зарание спасибо! ... |
|||
:
Нравится:
Не нравится:
|
|||
27.03.2019, 01:12 |
|
FB 2.5 Переименовать объекты базы данных и их зависимости
|
|||
---|---|---|---|
#18+
jugl1kМы хотим сделать небольшой рефакторинг и подправить в первую очередь название таблиц и их полей. Изменить название таблиц и полей не так просто, потому как у множество из них существуют зависимости, так как они используются в процедурах, триггерах и view. Более того, они используются в запросах, посылаемых из приложений. Сюрприз? Проще будет создать на них view с желаемыми именами, а сами таблицы не трогать. Второе по правильности решение - создать новую базу с нуля с нужными названиями и наладить в неё репликацию из первой. Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
27.03.2019, 01:43 |
|
FB 2.5 Переименовать объекты базы данных и их зависимости
|
|||
---|---|---|---|
#18+
Спасибо за совет! Всe логика лежит на уровне базы, в аппликации переписать запросы самое простое будет. Еще аргумент менять название связено с тем, что хотим объеденить 2 большие базы в единую, и хочется перед этим сделать все классификаторы идентичными (клиенты, поставщики, работники итд.). VIEW использывать идея не плохая, но PSQL защиты именно на таблицы, поэтому все равно их всех предётся переписыват руками. Программисты же делают рефакторинг своего кода. И современные IDE позволяют изменить тоже и название переменных/функций везде, почему бы что то похожое немогло бы быть в Firebird. Не совсем понел вторую мысль с новой базой и репликацией . ... |
|||
:
Нравится:
Не нравится:
|
|||
27.03.2019, 02:38 |
|
FB 2.5 Переименовать объекты базы данных и их зависимости
|
|||
---|---|---|---|
#18+
jugl1kНе совсем понел вторую мысль с новой базой и репликацией . Да чего там понимать. Выгружаешь SQL-скрипт метаданных, в любом текстовом редакторе делаешь контекстную замену старых названий на новые, создаёшь новую базу этим скриптом и переливаешь данные из старой базы в новую в соответствии со списком замен. ... |
|||
:
Нравится:
Не нравится:
|
|||
27.03.2019, 03:12 |
|
FB 2.5 Переименовать объекты базы данных и их зависимости
|
|||
---|---|---|---|
#18+
jugl1kVIEW использывать идея не плохая, но PSQL защиты именно на таблицы Повторяю медленно: старые таблицы и процедуры пока не трогай. Для себя создай новые вьюхи и новые процедуры с нужными именами, которые обращаются к старым. Когда всё заработает - можешь потихонечку рефакторить старый код. Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
27.03.2019, 13:33 |
|
FB 2.5 Переименовать объекты базы данных и их зависимости
|
|||
---|---|---|---|
#18+
jugl1kПрограммисты же делают рефакторинг своего кода. И современные IDE позволяют изменить тоже и название переменных/функций везде, почему бы что то похожое немогло бы быть в Firebird. Как и сказал Дед: загружаешь скрипт создания своей БД в "современную IDE", рефакторишь как в голову взбредёт, создаёшь новую БД из нового скрипта, переливаешь данные из старой. Всё, телемаркет. Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
27.03.2019, 13:40 |
|
|
start [/forum/topic.php?fid=40&tid=1560771]: |
0ms |
get settings: |
8ms |
get forum list: |
12ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
84ms |
get topic data: |
9ms |
get forum data: |
3ms |
get page messages: |
36ms |
get tp. blocked users: |
1ms |
others: | 308ms |
total: | 467ms |
0 / 0 |