Возможно, я либо что-то упустил, или, надеюсь, просто переосмыслил это, но ...
Сценарий таков, что у меня есть база данных MySQL с несколькими таблицами, большинство из которых имеют первичные и внешние ключи на месте и работают, как и ожидалось.
Но для этой конкретной таблицы я sh смогу принять значения только для определенного поля, если это значение существует в поле другой таблицы.
Так Например, у меня есть следующее:
Faults
ID fault
1 electrical
2 mechanical
3 electrical
4 operational
5 electrical
Log
ID date fault
1 300420 mechanical
2 010520 other
3 030520 mechanical
4 040520 electrical
(в Faults.fault много других дубликатов по другим причинам, и этого нельзя избежать в этом случае.)
Теперь я хочу иметь возможность добавлять строки в журнал только в том случае, если в Faults.fault .
существует значение Log.fault .
INSERT INTO Log (date, fault)
VALUE ('040520','hydraulic');
Как я могу гарантировать, что это позволяет только 'hydrauli c' быть добавленным, если оно существует в Faults.fault , которого в настоящее время нет ?
Сначала я думал о создании составных ключей, а также попытался посмотреть г в условные вставки, но на самом деле никуда не денется, особенно с последними.
Заранее спасибо ...