Я создал таблицы для клиентов и заказов следующим образом:У меня возникают проблемы, вставив значения с помощью внешнего ключа в MySql
mysql> create table customers (
-> customer_id int PRIMARY KEY,
-> lastname varchar(30),
-> firstname varchar(30),
-> address varchar(100),
-> phone_num char(12));
mysql> create table orders (
-> order_id int primary key,
-> date_placed date,
-> delivery_date date,
-> total_cost float,
-> paid boolean,
-> customer_id int,
-> foreign key (customer_id) references orders(customer_id));
Я создал клиент по имени Джозеф Смит, как это:
insert into customers values(1, 'Smith', 'Joseph', '1 Grey Street', '800-867-5309');
Я хочу, чтобы вставить заказ Джозефа Смита в таблице на «порядки», как это:
insert into orders values(1, '01-24-1990', '01-26-1990', true, 1);
НО, я получаю следующее сообщение об ошибке:
ERROR 1452 (23000): Cannot add or update a child row: a foreign key constraint fails (`mr3bn/orders`, CONSTRAINT `orders_ibfk_1` FOREIGN KEY (`customer_id`) REFERENCES `orders` (`customer_id`))
Очень хотелось бы получить разъяснения относительно
- , почему это не работает и
- как на самом деле заставить его работать. Благодаря!