Com base na tabela da sua pergunta anterior, você precisa
INSERT
registros primeiro na tabela independente (ou nas tabelas base ). Algumas dessas tabelas são event
, semester
, Major_Minor
, etc. Elas são chamadas de tabelas independentes porque não há restrições de chave estrangeira foram definidos. Consulta de exemplo para inserir em tabelas independentes,
-- INSERTING records on table event
INSERT INTO event (ID, event_description, event_datetime) VALUES
(1, 'hello', NOW()),
(2, 'world', NOW()),
(3, 'stack', NOW()),
(4, 'overflow', NOW());
-- INSERTING records on table semester
INSERT INTO semester (ID, SEMESTER_NAme) VALUES
(1, 'First Semester'),
(2, 'Second Semester'),
(3, 'Summer');
-- INSERTING records on table Major_Minor
INSERT INTO Major_Minor (ID, Major_Minor_Name) VALUES
(1, 'Math'),
(2, 'Science'),
(3, 'English');
-- INSERTING records on table class
INSERT INTO class (ID, class_name) VALUES
(1, 'Alpha'),
(2, 'Beta'),
(3, 'Gamma'),
(4, 'Omega');
Depois que os registros foram inseridos, agora você pode
INSERT
em tabelas dependentes. Estes são chamados de dependentes tabelas porque as restrições de chave estrangeira foram definidas nelas. Você não pode adicionar um valor em determinados campos que não existe na outra tabela. Exemplo de tabela dependente é Major_Class_br
tabela, -- INSERTING records on table Major_Class_br
INSERT INTO Major_Class_br (ID, Class_ID, Major_Minor_ID) VALUES
(1,1,1),
(2,1,2),
(3,1,3),
(4,2,1),
(5,2,1),
(6,4,2);
Como você pode ver, os valores para
Class_ID
e Major_Minor_ID
já existia nas tabelas:class
e Major_Minor
porque a tabela Major_Class_br
é dependente deles. Para ilustrar mais sobre isso, tente executar a consulta abaixo em que o valor para Class_ID
ainda não existe na Class
tabela, INSERT INTO Major_Class_br (ID, Class_ID, Major_Minor_ID) VALUES (7,5,2);
e você verá este erro