Зовнішній ключ дозволяє описати залежність ключа однієї таблиці від ключа іншої таблиці, тобто служить для створення зв’язків між таблицями. Підтримка зовнішніх ключів у СУБД MySQL забезпечується дескриптором таблиць ІnnoDB. Наприклад створимо 2 таблиці: основну і дочірню. Основна таблиця: create table parent(id_p int not null primary key, p_name text) type=innodb);
Дочірня таблиця: create table child(id_p not null, id_c not null, primary key(id_p, id_c), foreign key(id_p) references parent (id_p) on delete cascade). Опція on delete дозволяє задавати дії, що виконуються в дочірній таблиці при видаленні записів у початковій. Параметр cascade дозволяє видаляти записи в створеній таблиці при видаленні відповідних записів у основній таблиці.