Julgue os itens subsequentes, acerca dos conceitos relaciona...

Próximas questões
Com base no mesmo assunto
Q349073 Banco de Dados
Julgue os itens subsequentes, acerca dos conceitos relacionados a bancos de dados.

As DML (linguagens de manipulação de dados) procedurais normalmente geram códigos mais eficientes do que as DML não procedurais.
Alternativas

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 procedurais: O usuário informa qual dado deseja acessar e como obtê-lo. 

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