Изменения документа Анализ связей БД

Редактировал(а) Alexandr Fokin 2024/06/10 15:43

От версии 3.4
отредактировано Alexandr Fokin
на 2023/01/27 00:08
Изменить комментарий: К данной версии нет комментариев
К версии 2.4
отредактировано Alexandr Fokin
на 2021/11/14 00:19
Изменить комментарий: Update document after refactoring.

Сводка

Подробности

Свойства страницы
Родительский документ
... ... @@ -1,1 +1,1 @@
1 -Проекты и репозитории.Приложения.Автоматизированный анализ.WebHome
1 +Проекты и репозитории.Автоматизированный анализ.WebHome
Содержимое
... ... @@ -1,12 +1,11 @@
1 -|Задача|На основании существующих запросов (представлений, хранимых функций и процедур, разовых запросов) выделение возможных связей между таблицами (join), также в случае отсутствия внешнего ключа (на основании логики имеющихся запросов приложения).
2 -|Алгоритм|(((
1 +
2 +На основании существующих запросов (Представлений, хранимых функций и процедур, разовых запросов) выделение возможных связей между таблицами (join), также в случае отсутствия внешнего ключа.
3 +
4 +Вариант:
3 3  0) На вход получаем перечень таблиц.
4 -1) Получение файлов, содержащих необходимые данные sql (DDL скрипты).
6 +1) Получение файлов, содержащих необходимые данные sql.
5 5  2) Для каждого файла:
6 6  2.1) Определяем список таблиц, которые упоминаются в данном файле.
7 -3) Отбираем совокупность скриптов, содержащую наименьшее кол-во скриптов при том, что вся совокупность отобранных скриптов покрывает все таблицы из п.0.
9 +3) Отбираем совокупность скриптов, которые содержат внутри себя наибольшее кол-во таблиц,
10 +при том, что вся совокупность скриптов покрывает все таблицы из п.0.
8 8  4) Выполняем ручной анализ скриптов и построение схемы связей.
9 -
10 -
11 -Дополнение: если есть возможность, то можно сразу попытаться анализировать выражения from и join, но это сложнее.
12 -)))