Ограничение FOREIGN KEY

Ограничение FOREIGN KEY (или ссылочная целостность) определяет столбец или комбинацию столбцов как внешний ключ и устанавливает отношение с первичным ключом или уникальным ключом в той же самой таблице или в другой таблице.

Ограничение FOREIGN KEY

В примере на рисунке, DEPARTMENT_ID был определен как внешний ключ в таблице EMPLOYEES (зависимой или дочерней таблице); он ссылается на столбец DEPARTMENT_ID таблицы DEPARTMENTS (таблицы, на которую делается ссылка, или родительской таблицы).

Указания

  • Значение внешнего ключа должно соответствовать существующему значению в родительской таблице или быть NULL.

  • Внешние ключи основаны на значениях данных и являются лишь логическими, а не физическими, указателями.

Ограничение FOREIGN KEY

Определяется или на табличном уровне или на уровне столбца:

Указания

Ограничения FOREIGN KEY могут быть определены как ограничения уровня столбца или таблицы. Составной внешний ключ должен быть создан при использовании определения на уровне таблицы.

Пример на рисунке определяет ограничение FOREIGN KEY для столбца DEPARTMENT_ID таблицы EMPLOYEES, используя синтаксис уровня таблицы. Имя ограничения EMP_DEPT_FK.

Внешний ключ может также быть определен на уровне столбца, при условии, что ограничение основано на единственном столбце. Синтаксис отличается в том, что слово FOREIGN KEY не появляться. Например:

    CREATE TABLE employees
(...
department_id NUMBER(4) CONSTRAINT emp_deptid_fk
REFERENCES departments(department_id),
...
)

Далее: Псевдостолбцы NEXTVAL и CURRVAL

Смотрите также
Комментарии
Написать

(обязательно)

(обязательно)

Это не спам (обязательно)