Похоже, ваш вопрос сводится к следующему: как вы получаете функциональные зависимости из базы данных SQL (или схемы SQL, или таблицы SQL)?
Сначала рассмотрим уникальные ограничения (primary key
, unique
, unique index
и т. Д. Уникальные ограничения дают вам левую часть функциональной зависимости. Например, в
CREATE TABLE venues(
id serial PRIMARY KEY,
NAME TEXT,
address TEXT
);
идентификатор FD-> NAME, адрес удерживается. ИМЯ-> адрес и адрес-> ИМЯ не держат. Таблица разрешает такие данные. Должно ли это?
id NAME address
--
1 Wilton Stage 123 Main St
2 Wilton Jazz 321 Main St
3 Wilton Stage 123 Main St
4 Wilton Patio 123 Main St
5 Hayes Lounge 123 Main St
6 Wilton Stage 124 Main St
Некоторые из ваших таблиц не имеют уникальных ограничений. Это проблема для вас.
Некоторые таблицы должны иметь более одного уникального ограничения. В приведенной выше таблице вам , вероятно, требуется уникальное ограничение на имя, адрес или пару.