De klantentabel kan er als volgt uitzien. Het moet een gemeenschappelijk gegevenstype en index hebben voor de kolom in de bovenliggende tabel (klanten). De FK zal mislukken bij het aanmaken van een onderliggende tabel als de kolomtypes / index verkeerd zijn.
En voor een ALTER TABLE add constraint
commando met reeds bestaande gegevens in het kind, het zal mislukken als de gegevens niet geldig zijn.
Trouwens, de INT(4) is slechts een weergavebreedte. Het is nog steeds een 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;