Pular para o conteúdo principal

Questão de Banco de Dados — SQL — CESPE / CEBRASPE 2010

Banco de DadosSQL
Código
ce308612
Banca
CESPE / CEBRASPE
Órgão
INMETRO
Ano
2010
Nível
Superior
Cargo
CESPE - - Pesquisador Tecnologista em Metrologia e Qualidade - Informática Aplicada à Metrologia Legal
Acerca de modelos de dados, álgebra relacional, normalização e projeto de bancos de dados, assinale a opção correta.
  1. APor não ser consequência da interpretação semântica dos valores armazenados nos elementos da relação, a dependência funcional entre atributos de uma relação pode ser determinada mecanicamente, uma vez que não é necessário conhecer o significado de seus atributos.
  2. BConsidere que, em um sistema que gerencia tratamentos médicos, a relação Pacientes possua os atributos codigo, nome, endereco; a relação Exames possua os atributos codigo e preco para cada tipo de exame ao qual um paciente pode se submeter; e a relação ServicosEfetuados contenha pelo menos os atributos codigoPaciente, codigoExame, nome, descricao e data. Considere, ainda, que a chave primária de ServicosEfetuados seja a combinação dos atributos codigoPaciente, codigoExame e data. Nessa situação, os atributos nome e descricao da relação ServicosEfetuados são totalmente dependentes da chave primária.
  3. CDependências transitivas acontecem quando um atributo x de uma relação A depende da chave primária y de uma relação B que, por sua vez, depende de outro atributo z de uma relação C.
  4. DComo consequência da álgebra relacional, consultas podem ser utilizadas como parte de outras consultas e, ao se realizar o projeto de bancos de dados relacionais, não é necessário se preocupar com a quantidade de subconsultas em um comando SQL.
  5. EO uso de junção é um modo de substituir a utilização de subconsultas em comandos SQL de banco de dados relacionais. Nesse sentido, o seguinte comando de uma consulta SQL:SELECT NOME, CARGO FROM CARGO INNER JOINPESSOA ON CARGO.CODIGO = PESSOA.CARGO WHEREPESSOA.CARGO LIKE “ANALIS.*”é equivalente ao comando:SELECT NOME, CARGO FROM PESSOA WHERE CARGO IN(SELECT CODIGO FROM CARGO WHERE CODIGO LIKE “ANALIS.*”).
Revelar gabarito e comentário

GabaritoE — O uso de junção é um modo de substituir a utilização de subconsultas em comandos SQL de banco de dados relacionais. Nesse sentido, o seguinte comando de uma consulta SQL: SELECT NOME, CARGO FROM CARGO INNER JOIN PESSOA ON CARGO.CODIGO = PESSOA.CARGO WHERE PESSOA.CARGO LIKE “ANALIS.*” é equivalente ao comando: SELECT NOME, CARGO FROM PESSOA WHERE CARGO IN (SELECT CODIGO FROM CARGO WHERE CODIGO LIKE “ANALIS.*”).

Link permanente: /questoes/ce308612