Как обрабатывать устаревшую структуру базы данных SQL?

Мне нужно заново реализовать приложение, использующее базу данных с плохой структурой таблиц.

У таблиц есть первичный ключ, но они не используют никаких внешних ключей. Все «контролируется» логикой приложения.

Но я не могу нормализовать таблицы, потому что они используются другим приложением, которое заполняет таблицы.

Есть ли возможность реализовать в моем новом приложении уровень абстракции, чтобы упростить доступ к базе данных?

Попробуйте использовать просмотры.

Shawn 21.08.2018 20:43

Но что, если я хочу сохранить данные обратно в базу данных? В этом случае представление SQL не подходит.

CRO 21.08.2018 20:55

Вы не указываете, какую базу данных используете, но в большинстве из них вы можете обновлять представления, если представления созданы в соответствии с некоторыми рекомендациями. Наиболее важным является то, что представление должно включать PK и иметь отношение 1: 1 с базовыми таблицами. Проверьте вашу конкретную базу данных на предмет правил.

The Impaler 21.08.2018 21:26
ReactJs | Supabase | Добавление данных в базу данных
ReactJs | Supabase | Добавление данных в базу данных
Это и есть ваш редактор таблиц в supabase.👇
Понимание Python и переход к SQL
Понимание Python и переход к SQL
Перед нами лабораторная работа по BloodOath:
2
3
69
1

Ответы 1

Добавление уровня доступа к данным или шаблона репозитория создаст красивую абстракцию над вашей базой данных, которую вы можете программировать, и скроет уродство этой структуры базы данных. Затем вы можете представить, что внизу есть красивая, чистая, нормализованная структура. Это также дает вам возможность усилить часть этой ссылочной целостности и создать компенсирующее поведение при ее нарушении (создание исключений, исключение детей-сирот и т. д.).

Другие вопросы по теме