As tabelas a seguir fazem parte do banco de dados da área de recursos humanos de uma empresa. Elas registram os dados referentes aos empregados e aos seus dependentes.
CREATE TABLE EMPREGADO (
--MATRICULA INTEGER NOT NULL,
--NOME TEXT NOT NULL,
--DATA_NASC TEXT NOT NULL,
--CERT_RESRV INTEGER UNIQUE NULL,
--PRIMARY KEY (MATRICULA));
CREATE TABLE DEPENDENTE (
--MAT_EMP INTEGER NOT NULL,
--NUM_SEQ INTEGER NOT NULL,
--NOME TEXT NOT NULL,
--DATA_NASC TEXT NOT NULL,
--PRIMARY KEY (MAT_EMP, NUM_SEQ)
--FOREIGN KEY (MAT_EMP)
-----REFERENCES EMPREGADO (MATRICULA));
O estado corrente desse banco de dados é exibido nas figuras abaixo.
EMPREGADO
MATRICULA | NOME | DATA_NASC | CERT_RESERV |
11111 | Paulo Menezes | 25/05/1991 00:00 | 234811 |
22222 | Ana Maria Carvalho | 25/07/1983 00:00 | null |
33333 | Alexandre Cardoso | 11/08/1989 00:00 | 101678 |
DEPENDENTE
MAT_EMP | NUM_SEQ | NOME | DATA_NASC |
22222 | 1 | Valéria | 31/12/2017 00:00 |
22222 | 2 | Pedro | 09/06/2015 00:00 |
33333 | 1 | Joana | 22/03/2019 00:00 |
33333 | 2 | Mariana | 25/07/2020 00:00 |
Qual comando INSERT irá falhar, na tentativa de incluir uma nova linha em uma das tabelas desse banco de dados?
INSERT INTO DEPENDENTE(NUM_SEQ,MAT_EMP,DATA_NASC,NOME) VALUES(00,11111,datetime(‘2015-01-06‘),‘Luiz Paulo‘);
INSERT INTO DEPENDENTE(NOME,DATA_NASC,NUM_SEQ,MAT_EMP) VALUES(‘Maria Paula‘,datetime(‘2017-08-11‘),3,11111);
INSERT INTO EMPREGADO VALUES(55555,‘Antônia Pinto‘,datetime(‘1994-04-01‘),NULL);
INSERT INTO EMPREGADO VALUES(66666,‘Adriana Andrade‘,datetime(‘1985-06-04‘));
INSERT INTO EMPREGADO VALUES(44444,‘Nilce Peçanha‘,datetime(‘1999-09-06‘),‘‘);