I have the following SQL command:
select COLUMN_NAME
FROM
INFORMATION_SCHEMA.KEY_COLUMN_USAGE
WHERE
REFERENCED_TABLE_NAME = 'persons_data'
AND REFERENCED_COLUMN_NAME = 'ID'
AND TABLE_NAME = 'employees'
This returns the foreign key in the child table
employees that is
persons_data_ID. My problem is I want to insert a value in that foreign Key field, to illustrate what i need I will show what I tried.
What I have tried:
INSERT INTO `mySchema`.`persons_data` (`Name En`, `Address`, `National ID`)
VALUES
('Noud', 'Tyjkl', '697851');
INSERT INTO `mySchema`.`employees`
(select COLUMN_NAME
FROM
INFORMATION_SCHEMA.KEY_COLUMN_USAGE
WHERE
REFERENCED_TABLE_NAME = 'persons_data'
AND REFERENCED_COLUMN_NAME = 'ID'
AND TABLE_NAME = 'employees')
VALUES ( LAST_INSERT_ID());
I expect the previous code to function like the following one but it did not i want to know what is the mistake i did?
INSERT INTO `mySchema`.`persons_data` (`Name En`, `Address`, `National ID`)
VALUES
('Noud', 'Tyjkl', '697851');
INSERT INTO `mySchema`.`employees`
(persons_data_ID)
VALUES ( LAST_INSERT_ID());