SóProvas


ID
211015
Banca
CESPE / CEBRASPE
Órgão
MPU
Ano
2010
Provas
Disciplina
Banco de Dados
Assuntos

Julgue os itens seguintes acerca de DML (data manipulation
language) e DDL (data definition language).

As DML devem ser utilizadas incorporadas a outras linguagens, chamadas de linguagens hospedeiras, uma vez que sentenças escritas em DML devem estar embutidas em código escrito em uma linguagem hospedeira para que possam ser executadas.

Alternativas
Comentários
  • Gabarito ERRADO.

    Os comandos da DML podem aparecer embutidos em uma outra linguagem ...... linguagens de aplicação (ou linguagens hospedeiras) como Cobol. (http://www.fabinformatica.com.br/livros/Livro_-_Sistemas_de_Banco_de_Dados_-_Luiz_Camolesi_Jr..pdf)

    DML

    DML is abbreviation of Data Manipulation Language. It is used to retrieve, store, modify, delete, insert and update data in database.

    Examples: SELECT, UPDATE, INSERT statements

    DDL

    DDL is abbreviation of Data Definition Language. It is used to create and modify the structure of database objects in database.

    Examples: CREATE, ALTER, DROP statements

    DCL

    DCL is abbreviation of Data Control Language. It is used to create roles, permissions, and referential integrity as well it is used to control access to database by securing it.

    Examples: GRANT, REVOKE statements

    TCL

    TCL is abbreviation of Transactional Control Language. It is used to manage different transactions occurring within a database.

    Examples: COMMIT, ROLLBACK statements

    Reference : Pinal Dave (http://blog.SQLAuthority.com)

  • A resposta eh nao necessariamente.
    Nas aplicaçoes WEB q usam conectores JDBC, por exemplo, o desenvolvedor embute SQL no codigo JAVA; e o SQL, pra ser executado, depende de quando o codigo hospedeira vai chama-lo.
    Porem, o DBA, q não conhece, ou conhece pouco linguagens de programaçao, usa DML puro pra manipular os dados do banco, nao necessitando de nenhuma linguagem hospedeira pra isso.
  • As DML devem ser utilizadas incorporadas a outras linguagens, chamadas de linguagens hospedeiras, uma vez que sentenças escritas em DML devem estar embutidas em código escrito em uma linguagem hospedeira para que possam ser executadas.

    RESPOSTA: E

    Errado. Para que as DML's sejam executadas elas obrigatoriamente não devem estar incorporadas às linguagens hospedeiras.

    Profissionais da computação interagem com o sistema por meio de chamadas à DML que são embutidas em um programa escrito em uma linguagem hospedeira (por exemplo, Cobol, PL/I, Pascal, C, C++, Java, etc). Estes programas são frequentemente referenciados como programas de aplicação.

    Uma vez que a sintaxe da linguagem hospedeira normalmente é bastante diferente da sintaxe da linguagem hospedeira, chamadas na DML são usualmente precedida por um caractere especial, e então o código apropriado pode ser gerado

  • Gabarito: questão ERRADA.

    A palavra "deve" tornou a questão errada. Nem sempre DMLs, como as de alto nível, precisam ser embutidas numa linguagem de programação. A explicação para esta questão pode ser encontrada nas páginas 37 e 38, Capítulo 2 (Database System Concepts and Architecture), do livro Fundamentals of Database System, 6th edition, do Navathe. Uma das Review Questions deste capítulo é a seguinte:

    2.6. What is the difference between procedural and nonprocedural DMLs?

    Existem dois tipos principais de DMLs: alto nível ou não-procedural; baixo nível ou procedural.

    Alto nível ou não-procedural: uma DML de alto nível pode ser usada sozinha para especificar operações complexas de BD concisamente. Vários SGBDs permitem declarações DML de alto nível de duas formas:

    • Inseridas de forma interativa a partir de um monitor ou terminal – neste caso, declarações DML devem ser identificadas dentro do programa de tal forma que possam ser extraídas pelo pré-compilador e processadas pelo SGBD;
    • Embutidas em uma linguagem de programação de propósito geral.DMLs de alto nível, como SQL, são também chamadas de DMLs set-at-a-time ou DMLs set-oriented – podem especificar e recuperar vários registros em uma única sentença DML. Uma sentença DML de alto nível, usada sozinha de forma interativa, é chamada de linguagem de consulta.
    Baixo nível ou procedural: DMLs de baixo nível devem ser embutidas em uma linguagem de programação de propósito geral. Este tipo de DML tipicamente recupera registros individuais ou objetos do BD e os processa de forma separada. Assim, é necessário usar construções de linguagem de programação, tal como looping, para recuperar e processar cada registro de um conjunto de registros.

    Sempre que os comandos DML, tanto de alto quanto de baixo nível, forem embutidos em uma linguagem de programação de uso geral, esta será chamada de linguagem hospedeira e o comando DML de sub-linguagem de dados.

    Concluindo: somente as DMLs de baixo nível ou procedurais devem estar embutidas em uma linguagem de programação de propósito geral.