Julgue os itens subsequentes, acerca dos conceitos relaciona...
As DML (linguagens de manipulação de dados) procedurais normalmente geram códigos mais eficientes do que as DML não procedurais.
Gabarito comentado
Confira o gabarito comentado por um dos nossos professores
Alternativa correta: C - certo
Na questão em análise, focamos nos conceitos de DML (Data Manipulation Language), ou Linguagem de Manipulação de Dados em português, e a eficiência comparativa entre suas duas categorias: procedurais e não procedurais.
A DML procedural, também conhecida como imperativa, requer que o programador especifique como os dados devem ser manipulados e em que ordem essas operações devem ocorrer para alcançar o resultado desejado. Isso dá ao programador um controle mais fino sobre a execução das operações no banco de dados, o que pode levar a um código mais eficiente se bem otimizado.
Por outro lado, a DML não procedural, frequentemente associada aos bancos de dados relacionais, é também chamada de declarativa. Ela permite que o programador especifique o que resultado ele deseja, sem precisar detalhar o processo para se chegar a esse resultado. O sistema de gerenciamento de banco de dados (SGBD) tem a responsabilidade de determinar a forma mais eficiente de executar a consulta.
Embora os SGBDs modernos sejam muito sofisticados e otimizados, com planejadores de consulta (query planners) e otimizadores que fazem um bom trabalho ao determinar como executar as operações de DML não procedural, a abordagem procedural pode ser mais eficiente em certos contextos. Isto é especialmente verdadeiro quando o desenvolvedor tem um conhecimento profundo do banco de dados e pode criar algoritmos específicos que são mais diretos e menos custosos em termos de recursos do que aqueles gerados automaticamente pelo SGBD.
Consequentemente, a afirmação de que as DMLs procedurais normalmente geram códigos mais eficientes do que as DMLs não procedurais pode ser considerada correta, sob a condição de que o programador esteja apto a otimizar adequadamente o código. Isso justifica a alternativa "C" como a correta.
Clique para visualizar este gabarito
Visualize o gabarito desta questão clicando no botão abaixo
Comentários
Veja os comentários dos nossos alunos
DML não procedurais: O usuário informa qual dado deseja acessar SEM especificar como obtê-lo. São mais fáceis de aprender e usar. Se o usuário NÃO especificar COMO obter os dados, as linguagens não pocedurais poderão gerar código não tão eficiente.
Fonte: www.inf.ufsc.br/~vania/teaching/ine5613/Aula1.ppt
GAB.: CERTO.
(CESPE/2015/MEC) Linguagens de manipulação de dados não procedurais podem gerar código menos eficiente que as linguagens procedurais. Gabarito: certo
Caso a banca fale de DML declarativa, é a mesma de falar não-procedurais.
Clique para visualizar este comentário
Visualize os comentários desta questão clicando no botão abaixo