Таблицата на клиентите може да изглежда по следния начин. Трябва да има общ тип данни и индекс за колоната в родителската таблица (клиенти). FK ще се провали при създаване на дъщерна таблица, ако типовете колони/индексът са грешни.
И за ALTER TABLE add constraint
команда с предварително съществуващи данни в подчинен, тя ще се провали, ако данните не са валидни.
Между другото, INT(4) е просто ширина на дисплея. Все още е int.
create table customers(
customer_id int auto_increment primary key,
customerName varchar(100) not null
-- other columns
);
CREATE TABLE accounts(
account_id INT AUTO_INCREMENT PRIMARY KEY,
customer_id INT( 4 ) NOT NULL ,
account_type ENUM( 'savings', 'credit' ) NOT NULL,
balance FLOAT( 9 ) NOT NULL,
FOREIGN KEY (customer_id) REFERENCES customers(customer_id)
) ENGINE=INNODB;