2017-02-16 19 views
0

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

Пользователь должен захватить

формы, длиной мин, длиной макс, ширина мин, max max, манометр min, макс макс (это упрощается). он должен войти в форму и в наименее часть, например. форма и длина мин и макс. Он может ввести более одной части.

У меня возникает ощущение, что у меня не должно быть 1 стола. Я планировал создать форму, длину, ширину и таблицу показателей. Таблица длины, ширины и калибра будет иметь внешний ключ в таблице форм, а таблица моих измерений будет share the same primary key (я думаю, что это соотношение 1 к 1/0). Это позволит мне иметь/не иметь определенных частей там, где это необходимо, и исключать нулевые записи. Моя первая проблема заключается в том, что это хороший дизайн базы данных? Если мне нужно удалить, как я могу удалить, не удаляя отношения (в plsql)?

+1

Я думаю, что лучший совет, может зависеть от того, насколько упрощенного представления это. –

+0

@DavidAldridge. Форма состоит из 3-х столбцов для описания металла, а размерные части состоят из еще 1 столбца для длины, это длина длины min и length max. – David

ответ

0

Удаление строк с отношением 1 к 0/1 такое же, как для отношений от 1 до многих. Вы можете определить FK с помощью on delete cascade, чтобы удаление родителя автоматически удаляло дочерний элемент, или же всегда сначала удаляйте его.

Я не уверен, что я хорошо понимаю вашу модель, чтобы сообщить, подходит ли подход с двумя столами, но в целом это отличный метод, когда подмножество столбцов может не применяться.

Я не вижу вопроса PL/SQL, хотя, возможно, мне что-то не хватает.

0

У меня хороший дизайн базы данных начинается с нормализации. Надеюсь, что нижеследующая ссылка значительно расширяет ее.

Normalization