Ao se criar uma estrutura de banco de dados complexa, envolvendo mu...
🏢 FCC🎯 AL-PE📚 Banco de Dados
#Structured Query Language
Esta questão foi aplicada no ano de 2014 pela banca FCC no concurso para AL-PE. A questão aborda conhecimentos da disciplina de Banco de Dados, especificamente sobre Structured Query Language.
Esta é uma questão de múltipla escolha com 5 alternativas. Teste seus conhecimentos e selecione a resposta correta.
Em um banco de dados há duas tabelas, departamento e funcionario, cujos campos são:
Departamento:
DepNo - int - primary key - not null
DNome - varchar(50) - not null
DLocal - varchar(40)
Funcionario:
FunNo - int - primary key - not null
DepNo - int - foreign key - not null
FNome - varchar(50) - not null
FCargo - varchar(40)
FSal - double
Ambas as tabelas possuem muitos registros cadastrados, que não incluem valores nulos. Considere as instruções SQL a seguir:
I. select funcionario.FunNo, funcionario.FNome, departamento.DNome from funcionario INNER JOIN departamento ON funcionario.DepNo = departamento.DepNo;
II. select funcionario.FunNo, funcionario.FNome, departamento.DNome from funcionario, departamento where funcionario.DepNo = departamento.DepNo;
III. select f.FunNo, f.FNome, d.DNome from (select departamento.DepNo, departamento.DNome from departamento) as d, funcionario as f where d.DepNo = f.DepNo;
IV. select DISTINCT f.FunNo, f.FNome, d.DNome from funcionario f, departamento d;
Ao se criar uma estrutura de banco de dados complexa, envolvendo muitas tabelas com restrições de chave estrangeira, visões, gatilhos, funções, etc., cria-se, implicitamente, uma rede de dependências entre os objetos. Para garantir a integridade de toda a estrutura do banco de dados, muitos SGBDs não permitem remover um objeto quando há objetos que dependem do mesmo. Por exemplo, tentar remover a tabela departamento, onde a tabela funcionario depende dela, produz uma mensagem de erro semelhante a esta: DROP TABLE departamento;
ERRO: não foi possível remover a tabela departamento porque outros objetos dependem dela.
Se não tiver importância remover todos os objetos dependentes, então poderá ser executado o comando DROP TABLE com uma cláusula que faz com que todos os objetos dependentes sejam removidos. A cláusula citada é a