Buscar

ARTIGO DDL DML - banco de dados

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 9 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 6, do total de 9 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 9, do total de 9 páginas

Prévia do material em texto

Abordagem das Linguagens de Definição e Manipulação de Dados associadas a 
Linguagem de Consulta Estruturada
Jacciano da Silva Faleiro 
UNINOVE 
São Paulo, Brasil 
E-mail: jack_faleiro@yahoo.com.br 
 
 
 
 
Resumo— Este artigo apresenta uma visão dos Sistemas 
Gerenciadores de Banco de Dados e algumas vantagens em 
utilizar-se estes sistemas. Em seguida, apresenta-se uma visão 
geral da Linguagem de Consulta Estruturada (SQL) e as 
linguagens que a compõem (Linguagem de Definição de Dados, 
Linguagem de Manipulação de Dados, Linguagem de Controle 
de Dados e Linguagem de Transação de Dados) bem como os 
principais comandos associados a estas linguagens. É 
destacada a importância do uso das linguagens de Definição e 
Manipulação de Dados e suas aplicações no contexto de um 
Sistema Gerenciador de Banco de Dados. 
Palavras chave - Sistemas Gerenciadores de Banco de 
Dados; Linguagem de Consulta Estruturada; Linguagem de 
Definição de Dados; Linguagem de Manipulação de Dados. 
 
Abstract— This article present a vision introduction to the 
System Manager Database, which something the advantages of 
their use. In sequence we present an overview of the Structured 
Query Language and language that comprise (Data Definition 
Language, Data Manipulation Language, Data Control 
Language and Transaction Data Language) a principal at 
command the languages association . The pointed importance 
the using the language of Definition and Data Manipulation and 
it’s applications in the context of a System Manager Database. 
Keywords - System Manager Database; Estructured Query 
Language; Data Definition Language; Data Manipulation 
Language. 
 
 
I. INTRODUÇÃO 
 
Este artigo tem por objetivo fornecer ao leitor 
fundamentos das linguagens de Definição e Manipulação de 
dados. Para que se compreendam melhor os conceitos, 
vantagens e importância da Linguagem de Consulta 
Estruturada ou SQL (Structured Query Language), 
especificamente as linguagens de Definição e Manipulação 
de Dados. Apesar do foco deste artigo estar nas linguagens 
acima mencionadas, também serão apresentadas, em menor 
detalhe, as demais linguagens que compõem a Linguagem de 
Consulta Estruturada. 
As ferramentas de Sistema Gerenciador de Banco de 
Dados para bancos de dados relacionais sofrem melhorias 
significativas periodicamente e permite que os sistemas que 
delas se utilizam sejam cada vez mais eficazes na 
demonstração de suas informações. Com isso surge a 
necessidade de profissionais qualificados para manusear os 
Sistemas Gerenciadores de Banco de Dados Relacionais. 
Mas para isso esses profissionais terão que se especializar 
em uma linguagem chamada Linguagem de Consulta 
Estruturada para poderem manusear os Sistemas 
Gerenciadores de Banco de Dados apropriadamente. 
A Linguagem de Consulta Estruturada desenvolveu-se 
muito desde o seu surgimento em 1974 [9]. É uma 
linguagem padronizada que ajuda na construção, 
manipulação, concessão e transação de dados entre outras 
linguagens que ajudam na criação e manutenção do Banco de 
Dados. 
Este artigo apresenta as linguagens contidas na 
Linguagem de Consulta Estruturada. Para tal, são 
demonstrados breves conceitos sobre os Sistemas 
Gerenciadores de Banco de Dados, histórico da Linguagem 
de Consulta Estruturada e suas linguagens associadas, seus 
comandos didaticamente facilitados para entendimento, 
importância e aplicações destas linguagens. 
Este artigo está organizado da seguinte forma: na seção II 
são apresentadas as características gerais de um Sistema 
Gerenciador de Banco de Dados, bem como as vantagens de 
sua utilização. Em seguida, na seção III são apresentadas as 
características da Linguagem de Consulta Estruturada sem 
deixar de mencionar o seu histórico, vantagens e linguagens 
associadas tais como: Linguagem de Definição de Dados, 
Linguagem de Manipulação de Dados, Linguagem de 
Controle de Dados e Linguagem de Transação de Dados. A 
seção IV enfatizada a importância do uso das linguagens de 
definição e manipulação de dados e em seguida, na seção V, 
são descritas as aplicações das linguagens de definições e 
manipulações de dados e, por fim, as considerações finais. 
 
 
II. CARACTERÍSTICAS GERAIS DE UM SISTEMA 
GERENCIADOR DE BANCO DE DADOS 
 
SGBD (Sistema de Gerenciamento de Banco de Dados) é 
um tipo de sistema que tem como principal objetivo acessar 
e manipular dados, estabelece uma interface entre o software 
aplicativo e o Banco de Dados. É um sistema de propósito 
geral, facilitador dos processos de definição, construção, 
manipulação e compartilhamento de Banco de Dados, para 
que os dados que estão sendo requisitados pela aplicação 
sejam gerenciados, verificados e devolvidos de forma rápida, 
segura e eficiente. Esses dados são relacionados de forma 
que possam ser acessados mais facilmente [3]. 
A Figura 1 apresenta uma visão geral do processo onde o 
usuário, por meio de qualquer computador e aplicativo, 
fornece elementos suficientes para solicitar informações que 
estão armazenadas no Banco de Dados. Em seguida estes 
elementos passam pelo SGBD até chegar ao Banco de 
Dados, depois que a solicitação foi recuperada, ou seja, os 
dados solicitados foram obtidos é realizado o caminho 
inverso até que os dados sejam fornecidos ao usuário. O 
SGBD é um sistema baseado em software responsável por 
relacionar a interface do usuário com o Banco de Dados. 
 
 
 
 
Figura1. Relação Usuário – SGBD 
 
 
O principal objetivo do SGBD é oferecer um ambiente 
tanto conveniente quanto eficiente para a recuperação e 
armazenamento de informações no Banco de Dados [3]. 
Os SGBD’s são conhecidos pela sua rapidez de 
execução. Principalmente, numa época onde até mesmo os 
maiores sistemas se mostram cada vez mais vulneráveis as 
invasões. Seu sistema de gerenciamento preza pela 
segurança dos dados, além dos fabricantes prezarem pela sua 
segurança, eles podem acrescentar várias funcionalidades 
exclusivas ao seu SGBD, o que ocorre com grande 
frequência nos principais fabricantes como Microsoft SQL 
Server, Oracle e IBM [5]. 
São funções importantes dos SGBD’s suas proteções e 
manutenções de fácil interação. Proteções contra maus 
funcionamentos, falhas de hardware, software, e de acessos 
não autorizadas. Logo as manutenções devem permitir que 
os Bancos de Dados gerenciados pelos SGBD’s, mantenham 
a evolução dos requisitos durante um longo tempo [5]. 
Os SGBD’s possuem esquemas conhecidos como 
diagramas [5]. Estes esquemas armazenam a estrutura do 
Banco de Dados que tem algumas características, tais como, 
não são alterados com frequência e existe um esquema para 
cada nível de abstração. As abstrações são objetos do mundo 
real, por exemplos, como aluno ou curso. 
Os esquemas são desenvolvidos pelos comandos da 
Linguagem de Definição de Dados, onde se transformam o 
conceito em estrutura para o armazenamento de dados, com 
os dados armazenados utilizam-se os comandos da 
Linguagem de Manipulação de Dados para inserção, 
alteração, exclusão ou recuperação dos mesmos. 
SGBD possuem diversas vantagens, entre elas: 
independências de dados e programa, melhor acesso aos 
dados e a informação, integridade dos dados aperfeiçoada, 
redundância de dados, melhor proteção dos dados. Segue 
abaixo maiores detalhes. 
Independências de dados e programa: o SGBD organiza 
os dados independentes do aplicativo. 
Melhor acesso aos dados e a informação: os SGBD’s tem 
softwares que facilitam o acesso e a recuperação de dados do 
Banco de Dados [3]. Comandos simples, relações 
importantes entre registros ficam mais fáceis de serem 
explorados e os aplicativos podem ser combinados com 
maior facilidade. 
Integridade dos dados aperfeiçoada: evita a existência de 
arquivos separados que contenham cópiasdos mesmos 
dados. Evita também a inserção de dados não permitidos ao 
modelo, como, por exemplo, nota dos alunos de uma escola, 
onde não pode constar uma nota que seja menor que zero ou 
maior que dez, pois seria um valor inválido para esse tipo de 
situação [5]. O Banco de Dados deve impedir que as 
aplicações comprometam a integridade dos dados [10]. 
Redundância de dados: os dados são organizados por um 
SGBD e armazenados em apenas um local, onde são 
inseridos todos juntos, para que não exista duplicação dos 
mesmos [10]. Isso possibilita assim em uma melhor 
utilização do espaço, para ficar melhor armazenado, com 
maior eficiência e sem necessidade de pesquisar vários 
arquivos para recuperação das informações [8]. Com isso 
minimiza-se a redundância dos dados no armazenamento dos 
mesmos e garante uma eficiente recuperação das 
informações. 
Melhor proteção dos dados: como os dados estão 
centralizados, ficam mais fáceis de serem monitorados e 
controlados. Senhas podem assegurar que os dados, 
informações privilegiadas e particulares não sejam 
acessadas, assim protege os dados de manipulações não 
autorizadas. As Proteções contra maus funcionamentos, 
falhas no hardware ou no software e segurança contra 
diversos acessos não permitidos ou mal intencionados estão 
mais intensificados, ou seja, mais seguros [5]. 
Na maioria dos usuários de Bancos de Dados, não tem 
acesso às informações disponíveis no Banco de Dados. Por 
exemplo, os dados financeiros são de extrema confiabilidade 
e por isso motivo, só algumas pessoas podem ter acesso a 
estas informações. 
O SGBD permite a facilidade de recuperar os dados e 
falhas de hardware ou de software, através de imagens, como 
o backup. O backup do Banco de Dados torna-se importante 
para qualquer organização, pois garante a recuperação das 
estruturas do Banco de Dados e principalmente dos dados, 
caso o SGBD venha a falhar por algum motivo. 
Padronização do acesso aos dados: a padronização aos 
dados ajuda na abordagem uniforme do acesso aos Bancos 
de Dados, sendo assim, os mesmos procedimentos são 
utilizados para recuperação de dados por todos os programas 
[8]. O SGBD dispõe de recursos para autorização de acessos 
aos usuários, tais como leitura, atualização, deleções e 
inserções [10]. 
Modificação e atualização mais fáceis: o SGBD coordena 
as modificações e atualizações. Os dados são armazenados e 
modificados ao mesmo tempo, as modificações e 
atualizações são mais fáceis, pois os dados na maioria dos 
casos são guardados em apenas um local [8]. 
Uma estrutura para desenvolvimento de programa com 
tempo reduzido: como os programas passam pelo SGBD 
para obterem acesso aos dados no Banco, o acesso 
padronizado ao Banco de Dados demonstra um modelo 
consistente para a criação de programas. Cada programa 
refere-se ao SGBD e não ao arquivo de dados, assim diminui 
o tempo de desenvolvimento do aplicativo [2]. São criadas 
funções que trabalham em conjuntos com vários programas 
que utilizam o SGBD, assim a interface sendo de alto nível 
aos dados, ajuda no desenvolvimento rápido e eficaz desses 
programas. 
Acesso concorrente de informações compartilhadas: é 
uma característica do SGBD, estender os custos de hardware 
e software a um grande número de aplicações e usuários 
[10], para atender a concorrência ao acesso dos dados que 
fortalece a recuperação e inserção dos mesmos sem erros. O 
SGBD verifica os acessos ao Banco de dados de tal modo 
que os usuários não percebam que os dados estão sendo 
acessados por mais de um usuário. 
 
 
III. ABORDAGEM DA SQL (STRUCTURED QUERY 
LANGUAGE) 
 
SQL (Structured Query Language) tem sua expressão em 
português traduzida para: Linguagem de Consulta 
Estruturada. É uma linguagem de pesquisa declarativa para 
Banco de Dados relacionais e tem suas principais 
características extraídas da álgebra relacional [1]. Além de 
ser uma linguagem fácil, é a linguagem mais utilizada no 
mercado comercial, linguagem que além de utilizar a álgebra 
relacional também utiliza o cálculo relacional. 
A Linguagem de Consulta Estruturada é uma linguagem 
de alto nível para manipulação de dados no Banco de Dados, 
objetiva de fácil aprendizado e manipulação, pois até mesmo 
comandos de difícil execução são estudados e 
implementados em poucos dias, obtendo-se um excelente 
desempenho e sucesso em sua implementação. 
Segundo [7], houve uma infelicidade na padronização da 
Linguagem de Consulta Estruturada, pois existiam diversas 
linguagens excelentes para criações de tabelas, bem como 
acesso a elas que foram eliminadas pela generalização da 
Linguagem de Consulta Estruturada. Depois que a 
Linguagem de Consulta Estruturada foi padronizada, ela 
tornou-se atrativa e muito importante para as empresas que 
desenvolvem e utilizam Banco de Dados. 
Segue-se com uma abordagem histórica da linguagem, 
suas vantagens e linguagens associadas à Linguagem de 
Consulta Estruturada por meio das sub-seções abaixo. 
 
 
A. Histórico sobre a Linguagem de Consulta Estruturada 
 
Já se passaram várias décadas desde o surgimento da 
sigla SQL, originalmente criada nos anos setenta nos 
laboratórios da IBM (International Business Machine), e 
apresentada em sua primeira versão no ano de 1974 [9]. A 
sigla SQL, como é conhecida nos dias de hoje, tem sua 
expressão em inglês Structured Query Language, cuja 
tradução é Linguagem de Consulta Estruturada. No início de 
sua existência chamava-se SEQUEL (Structured English 
Query Language), que foi desenvolvida por Donald D. 
Chamberlin [1]. 
Na sequência, entre 1974 -1975, a linguagem SEQUEL 
foi testada em Banco de Dados relacionais pela IBM, 
denominado SEQUEL-XRM, em 1976 - 1977 passou a ser 
chamada de SEQUEL/2 e mais adiante passou a ser chamada 
de SQL [1]. 
Fabricantes de SGBD introduziram a Linguagem de 
Consulta Estruturada em suas ferramentas, com isso houve a 
uma necessidade de gerar uma organização para 
regulamentar as normas e critérios. Surgiu então a ANSI 
(American National Standarts Institute), tem sua expressão 
em português traduzida para Instituto Nacional Americano 
de Padrões, é uma organização particular que tem por 
objetivo facilitar a padronização de trabalhos, em 1986 foi 
lançado o primeiro padrão oficial da Linguagem de Consulta 
Estruturada o SQL/86 [8]. O segundo padrão surgiu em 1987 
como SQL/89, logo mais em 1992 surgiu o terceiro padrão 
SQL/92, depois em 1999 mais um padrão, já seria o quarto, 
denominado SQL3 (SQL/92) [9]. A última foi em 2003 
denominada SQL/2003 com inclusões ao XML (Extensible 
Markup Language), tem sua expressão em português 
traduzida para Linguagem de Marcação e Extensão, 
linguagem de propósito geral que facilita o 
compartilhamento de informações. 
Ao longo dos anos a Linguagem de Consulta Estruturada 
recebeu ramificações no contexto de sua linguagem, mas 
nunca perdeu a sua essência. 
A Linguagem de Consulta Estruturada adquiriu 
características para melhor entender o que esta sendo 
desenvolvido. Ela esta associada às linguagens: Data 
Definition Language (Linguagem de Definição de dados), 
desenvolvida para criação, alteração e exclusão das 
estruturas; Data Manipulation Language (Linguagem de 
Manipulação de Dados), desenvolvido para seleção, 
inserção, atualização e deleção de dados; Data Control 
Language (Linguagem de Controle de Dados), desenvolvida 
para controlar os aspectos de autorização aos dados; Data 
Transact Language (Linguagem de Transação de Dados), 
desenvolvida para garantir o início e fim das transações ao 
Banco de Dados. 
 
 
B. Vantagens da Linguagem de Consulta Estruturada 
 
A Linguagem de Consulta Estruturada oferece uma gama 
de comandos para criação de consultas de alto nível. Estas 
consultas são utilizadas na construção de relatórios com 
diferentes visões dos dados aosdiferentes usuários. Estas 
consultas mesmo sem a interação de programas podem 
utilizar de formulários ou até mesmo de ferramentas de 
montagem de relatórios. 
A Linguagem de Consulta Estruturada esta inserida nos 
SGBD tendo uma independência de fabricante. Com isso é 
possível substituir o SGBD por qualquer nova versão. 
Permite a sua utilização em qualquer computador, seja ele 
uma estação de trabalho ou até mesmo um computador de 
grande porte [2]. 
A Linguagem de Consulta Estrutura é inserida em 
diversas aplicações com isso ela pode ser trabalhada em 
diversos ambientes, que ajuda na redução de treinamentos e 
na manipulação de diversos objetos dentro dos SGBD. Ela 
auxilia no acesso a diversos Bancos de Dados em diferentes 
computadores e também na comunicação de dados com 
outros sistemas. 
As sentenças em inglês ajudam na implementação da 
Linguagem de Consulta Estruturada, pois são simples e de 
fácil entendimento ao usuário, com isso podemos criar, 
alterar e excluir as estruturas com muita flexibilidade e 
rapidez. As sentenças que são criadas para seleção de dados 
utilizam otimizadores que se encontram nos SGBD, para que 
as informações solicitadas retornem rapidamente [10]. 
 
 
C. Linguagens associadas a Linguagem de Consulta 
Estruturada. 
 
• DDL – Data Definition Language 
Tem sua expressão em português traduzida para 
Linguagem de Definição de Dados, utilizada pelos 
administradores e projetistas de Banco de Dados para definir 
o esquema do Banco de Dados, ou seja, definição dos 
objetos onde é transformado o modelo conceitual/lógico em 
modelo físico [5]. No modelo físico através dos esquemas 
são criadas as estruturas de um Banco de Dados para que em 
seguida seja utilizada a Linguagem de Manipulação de 
Dados que será abordada a seguir. 
A Linguagem de Definição de Dados permite as criações, 
alterações e exclusões do esquema no Banco, ou seja, seus 
objetos [2]. Para construção do esquema pode-se criar, 
alterar e até mesmo excluir as estruturas tais como tabelas, 
definições de visões, procedimentos armazenados, índices, 
trigger ou gatilho, entre outros objetos para formação do 
esquema. Especificando assim as regras de integridades dos 
dados que estarão sendo armazenados dentro do repositório 
de dados, ou seja, dentro do Banco de Dados. 
A Linguagem de Definição de Dados possui alguns 
comandos para criação, alteração e exclusão dos esquemas 
propostos pelo desenvolvedor do Banco de Dados. Logo 
após os comandos serem compilados, ou seja, executados 
eles são armazenados no dicionário de dados que se encontra 
dentro do SGBD. 
A Figura 2 apresenta uma visão da utilização dos 
comandos da Linguagem de Definição de Dados para criação 
de uma tabela, onde seus comandos são: create (criação), 
alter (alteração) e drop (exclusão). 
O comando create (criação) corresponde a criação das 
estruturas do Banco de Dados, ou seja, a criação dos objetos. 
Dentre os principais objetos do Banco de Dados estão às 
tabelas, objetos de essencial importância para o Banco de 
Dados, pois são nesses objetos que são armazenados os 
dados. As tabelas podem ser desenvolvidas com diversos 
campos e tipos de dados, levam também as chaves primárias 
e estrangeiras para que possam estabelecer os 
relacionamentos entre as mesmas, nelas também são 
atribuídos os índices para melhorar as consultas dos dados 
pela Linguagem de Manipulação dos Dados. 
Já o comando alter (alteração) corresponde a alteração 
das estruturas desenvolvidas pelo comando create (criação). 
O comando alter (alteração) é de importância primordial 
para o Banco de Dados, pois se as estruturas criadas já 
estivessem populadas, ou seja, repletas de dados e fosse 
necessária a inserção de um novo campo, índice, chave 
primária ou chave estrangeira, seria obrigatório a exclusão 
desse objeto com o comando drop (exclusão), para que logo 
em seguida fosse criado um novo objeto para adicionar as 
novas alterações. Assim os dados seriam perdidos, pois com 
a utilização do comando drop (exclusão), o objeto criado é 
desfeito, ou seja, excluído e com essa exclusão os dados 
seriam perdidos, pois o objeto deixaria de existir por isso a 
importância do comando alter (alteração). 
 
 
 
 
Figura 2. Exemplo de comandos da Linguagem de 
Definição de Dados. 
 
• DML – Data Manipulation Language 
 
 
Tem sua expressão em português traduzida para 
Linguagem de Manipulação de Dados, essa linguagem 
permite que o usuário manipule os dados através de: 
recuperação, inserção, modificação e exclusão de dados que 
estão descritos no esquema, ou seja, estrutura onde os 
objetos estão armazenados criados pela Linguagem de 
Definição de Dados [5]. 
A Figura 3 apresenta uma visão da utilização dos 
comandos da Linguagem de Manipulação de Dados, onde 
seus comandos são: select (seleção), insert (inserção), update 
(atualização), delete (exclusão). 
O comando select (seleção) corresponde a recuperação 
dos dados, que são inseridos nos objetos, por exemplo, nas 
tabelas pelo comando insert (inserção) que corresponde a 
inserção de dados nos objetos criados. Essas recuperações de 
dados ou consultas, são acionadas por instruções onde 
podem ser selecionados todos os registros de uma única vez, 
como podem ser selecionados apenas os registros que forem 
necessários na ocasião. Além disso, podem-se selecionar os 
registros ao qual seja relevante para a seleção, com 
comandos que expressam condições ao select (seleção). 
Já o comando update (atualização), diferente do comando 
alter (alteração) que altera as estruturas dos objetos, 
corresponde a alteração dos dados inseridos no Banco de 
Dados pelo comando insert (inserção). O comando update 
(atualização) também leva em seu contexto uma referência 
muito importante para a alteração de seus registros, são os 
comandos que expressam condições ao update (atualização), 
pois sem esses comandos o risco de alteração em todos os 
registros de uma única vez é eminente, resultando assim em 
uma redundância de dados, ou seja, dados repetidos. 
Com o comando delete (exclusão), os registros são 
deletados do Banco de Dados, o comando delete (exclusão) 
também deve levar em seu contexto uma referência muito 
importante para a deleção dos seus registros, são os 
comandos que expressam condições ao delete (exclusão), 
pois sem esse comando o risco de deletar todos os registros 
de uma única vez é eminente. 
 
 
Figura 3. Exemplo de comandos da Linguagem de 
Manipulação de Dados “seleção de campos específicos da 
tabela”. 
 
• DCL – Data Control Language 
 
Tem sua expressão em português traduzida para 
Linguagem de Controle de Dados, essa linguagem apresenta 
comandos que controlam o acesso aos dados, usuários e 
grupos através de permissões, que podem ser revogadas 
sempre que necessárias [6]. 
A Figura 4 apresenta uma visão da utilização dos 
comandos da Linguagem de Controle de Dados, onde seus 
comandos são: grant (concessão) e revoke (revogação). 
O comando grant (concessão) corresponde a permissões 
dadas aos usuários de Banco de Dados para que os mesmos 
tenham acesso a recuperação, inserção, alteração ou deleção 
dos dados de um determinado objeto. 
Já com o comando revoke (revogação), acontece o 
contrário do comando grant (concessão), ele retira a 
permissão concedida ao usuário de Banco de Dados para que 
os mesmos não tenham acessos a recuperação, inserção, 
alteração ou deleção dos dados de um determinado objeto. 
Para a utilização desses comandos é necessário a criação 
de um usuário para que o mesmo receba as devidas 
concessões ou revogações. 
 
 
 
Figura 4. Exemplo de comandos da Linguagem de 
Controle de Dados. 
 
 
• DTL – Data Transact Language 
 
Tem sua expressão em português traduzida para 
Linguagem de Transaçãode Dados, essa linguagem 
apresenta comandos que são utilizados para marcar o início 
de uma transação de Banco de Dados que podem ser 
completadas [6]. 
A Figura 5 apresenta uma visão da utilização dos 
comandos da Linguagem de Transação de Dados, onde seus 
comandos são: commit (executar) e rollback (desfazer). 
O comando commit (executar), corresponde a efetivação 
de comandos da Linguagem de Manipulação de Dados, onde 
seus comandos são: insert (inserção), update (atualização) e 
delete (exclusão). 
Já o comando rollback (reversão), corresponde a 
não efetivação dos comandos da Linguagem de Manipulação 
de Dados, onde seus comandos são: insert (inserção), update 
(atualização) e delete (exclusão). O rollback (reversão) é 
muito utilizado em procedimentos onde acontece algum erro 
e os dados não conseguem ser manipulados a tempo, 
retornando assim a sua situação anterior. 
 
 
 
Figura 5. Exemplo de comandos da Linguagem de 
Transação de Dados. 
IV. A IMPORTÂNCIA DO USO DAS LINGUAGENS DDL E 
DML 
 
Para se trabalhar com as linguagens de: Definição de 
Dados e Manipulação de Dados e obter sucesso em sua 
implementação é preciso minimizar problemas simples, onde 
o desenvolvedor tem que focar totalmente na regra de 
negócio e elaborar seus códigos com exatidão para que as 
instruções implementadas tenham um bom desempenho, 
além de chegar aos resultados esperados, que também 
apresentem um bom resultado. 
Alguns problemas encontrados no dia a dia em que são: a 
não conformidade de elaboração de códigos de alto nível, 
muitos por falta de conhecimento da linguagem; prazos de 
entregas muitos reduzidos; falta de qualidade de software e 
de seus processos. 
Os comandos da Linguagem de Definição de Dados são 
fundamentais para definição do Banco de Dados a ser criado 
e utilizado, as tabelas que serão inseridas dentro do contexto, 
os campos a serem mencionados, as chaves primárias, 
estrangeiras, sem deixar de citar as chaves candidatas, 
compostas e os índices nas tabelas. Resume-se que, com a 
Linguagem de Definição de Dados são criadas as estruturas, 
ou seja, os objetos para que o otimizador do Banco de Dados 
use adequadamente o acesso a estes objetos [10]. Com a 
criação dos objetos é possível desenvolver as relações 
existentes entre as tabelas, cria-se assim a integridade 
referencial dos dados para evitar a redundância dos mesmos. 
Dentre seus principais e importantes comandos, destaca-
se o create (criação). Outros comandos importantes da 
Linguagem de Definição de Dados são: alter (alteração) e 
drop (exclusão) [6]. 
A Linguagem de Definição de Dados além de especificar 
os conjuntos das relações, demonstra importantes 
informações acerca das relações criadas do tipo: regras de 
integridade, regras de conversão, esquemas das relações, o 
domínio dos valores atribuídos aos campos, conjuntos de 
índices para manutenções das tabelas, informações das 
seguranças e autorizações das relações existentes, estruturas 
armazenadas em disco das relações criadas [8]. 
Os comandos da Linguagem de Manipulação de Dados 
são fundamentais para a manipulação de dados. Ela 
apresenta inúmeros comandos destinados à manipulação dos 
dados inseridos no contexto criado na Linguagem de 
Definição de Dados, para consultas, inserções, alterações e 
exclusões. Os comandos que se destacam são: select 
(seleção), insert (inserção), update (atualização) e delete 
(exclusão) [6]. 
 Um dos principais comandos é o select (seleção), que é 
destinado à visualização das informações ao usuário, com 
isso trabalha-se muito com a otimização das informações, ou 
seja, busca mais elaborada e eficiente. 
A Linguagem de Definição de Dados permite trabalhar 
com estruturas de níveis bem altos e a Linguagem de 
Manipulação de Dados aceitam registros como entradas e 
retornam grupos de dados como saída. Com a utilização do 
otimizador, entende-se melhor o porquê de sua importância. 
Otimizador, conhecido como Tuning (Ajuste), consiste 
no ajuste das consultas para obter um melhor desempenho, 
ou seja, ele ajuda a trazer a informação mais rápida para o 
usuário final. Sua finalidade é escolher a melhor estratégia 
possível para a consulta da Linguagem de Manipulação de 
Dados que o programador está a desenvolver [12]. 
Os SGBD incluem dentro de seus sistemas um 
otimizador de consultas, para ajudar a Linguagem de 
Consulta Estruturada na recuperação dos dados. 
A partir da criação de uma tabela, onde são armazenados 
os dados, podem ser criados índices que são referências 
criadas em campos da tabela onde o otimizador do SGBD 
encontrará os dados. Na busca pelos dados, são verificados 
primeiro os campos que contém índices e depois nos campos 
subsequentes. 
As chaves primárias desenvolvidas nas tabelas levam por 
definição um índice, mas apenas este índice não resolve 
totalmente a rapidez nas consultas pelos dados. Com a 
criação dos índices, as consultas que são geradas pela 
Linguagem de Manipulação de Dados ficarão mais rápidas. 
Mas não estão sendo verificados os méritos de como foram 
criados estes índices, pois índices criados em qualquer 
atributo (campo), ao invés de ajudar a buscar os dados com 
maior rapidez, muitas vezes deixará a consulta ainda mais 
lenta. 
Índice é uma indicação de onde estão armazenados os 
dados. Pode ser exemplificada como a verificação dos 
índices de um livro, pois ao abrir o livro e verificar o seu 
índice encontra-se a informação ou palavra chave que está 
associada a um número de página que fará com que a pessoa 
seja direcionada para o conteúdo [11]. 
Em geral, com a utilização de índices, os ganhos em 
desempenho são no mínimo duas vezes mais rápidos do que 
uma tabela que não contem índices. 
 
 
V. APLICAÇÕES DAS LINGUAGENS DE DEFINIÇÃO E 
MANIPULAÇÃO DE DADOS 
 
As instruções da Linguagem de Consulta Estruturada 
podem ser aplicadas em diversas situações, que abrange uma 
quantidade significativa de situações. 
Podem-se aplicar as instruções da Linguagem de 
Manipulação de Dados do tipo: select (seleção), insert 
(inserção), update (atualização) e delete (exclusão) em 
técnicas de paralelismo, ou seja, processamento paralelo, 
para melhorar o desempenho, os SGBD trabalham na 
execução das instruções da Linguagem de Consulta 
Estruturada através de um otimizador de consultas, que por si 
só já trabalha com algumas técnicas de processamento 
paralelo, mas nem sempre o plano de execução que o 
otimizador cria é totalmente eficiente e gera ganhos 
expressivos, então se pode utilizar de várias outras técnicas 
mais avançadas para melhorar esta otimização, neste caso 
utiliza-se técnicas de processamento paralelo [12]. 
O processamento paralelo executa diferentes operações 
de uma consulta e executam diversas consultas em paralelo. 
Primeiramente o sistema verifica uma consulta e não se 
preocupa com outras consultas que estão sendo executadas 
no mesmo momento, neste caso para que se obtenham 
ganhos expressivos entra o processamento paralelo que ajuda 
o sistema a efetuar suas consultas mais rapidamente. 
Podem-se aplicar as instruções da Linguagem de 
Definição de Dados do tipo: create (criação), alter 
(alteração) e drop (exclusão) para modelar um Banco de 
Dados e transformá-lo de um modelo lógico em um modelo 
físico. A modelagem de dados é muito importante para 
viabilizar o armazenamento dos dados e logo na sequência 
trabalhar com as instruções da Linguagem de Manipulação 
de Dados para acessar as informações de um sistema. 
São utilizadas na modelagem regras claras como 
primeira, segunda e terceira forma normal, a fim de permitir 
um armazenamento consistente e um eficiente acesso aos 
dados de um Banco de Dados [13]. 
Podem-se aplicar as instruções da Linguagem de 
Manipulação de Dados do tipo: select (seleção) para visões e 
consultas aninhadaspara geração de relatórios. Técnicas de 
visões e consultas aninhadas ajudam a desenvolver relatórios 
mais eficientes e sofisticados, com o auxílio de recursos 
como where (onde), from (de) e select (seleção). 
Na teoria as visões consistem em consultas armazenadas, 
para serem acessadas iguais às tabelas, mas as visões não 
fazem parte do esquema físico do Banco de Dados, as 
consultas aninhadas ou subconsultas são recursos muito 
utilizados na Linguagem de Consulta Estruturada [4]. 
Dentre as situações apresentadas para se aplicar as 
linguagens de Definição e Manipulação de Dados, 
mencionam-se apenas algumas entre inúmeras aplicações 
onde podem ser utilizadas, sem deixar de mencionar 
aplicações que ainda não foram descobertas para as 
linguagens citadas. 
 
 
VI. CONSIDERAÇÕES FINAIS 
 
Neste artigo foi apresentado o conceito e características 
do SGBD e um breve histórico da Linguagem de Consulta 
Estruturada. Sendo que para cada uma das linguagens que se 
seguem: Linguagens de Definição, Manipulação, Controle e 
Transação de Dados, foram apresentados comandos básicos 
para que se tenha uma noção simplificada de sua utilização. 
Em seguida foram citadas as importâncias e aplicações das 
linguagens de Definição e Manipulação de Dados. 
Destacaram-se entre os tópicos abordados as linguagens 
de Definição e Manipulação de Dados, que são importantes 
para definir as estruturas e manipular dados. Mencionam-se 
também breves situações onde estas linguagens são 
aplicadas. 
Na abordagem das linguagens de Definição e 
Manipulação de dados que são associadas a Linguagem de 
Consulta Estruturada, conclui-se que sem a Linguagem de 
Definição de Dados, não seria possível criar as estruturas do 
Banco de Dados, com isso a Linguagem de Manipulação de 
Dados não pode ser utilizada, pois sem as estruturas criadas 
não haveria a possibilidade de inserir, atualizar, deletar e 
selecionar dados. Sendo assim as linguagens associadas se 
completam para formar a Linguagem de Consulta 
Estruturada. 
 
 
REFERÊNCIAS 
 
[1] J. A. N. G. Manzano, Microsoft SQL Server 2008 Express Interativo 
Guia Prático. São Paulo: Érica, 2009. 
[2] R. Ramakrishnan e J. Gehrke, Sistemas de Gerenciamento de Banco 
de Dados. São Paulo: McGraw-Hill, 2008. 
[3] C. J. Date, Introdução a Sistemas de Banco de Dados. Rio de Janeiro: 
Campus, 2000. 
[4] W. Crivelini, “Usando linguagem SQL para Geração de relatórios,” 
SQL Magazine, v. 8, n. 95, 2011, pp.14-23. 
[5] R. Elmasri e S. B. Navathe, Sistemas de Banco de Dados. São Paulo: 
Addison Wesley, 2005. 
[6] R. Spínola, “Trabalhando com condições e operadores em consultas 
SQL,” SQL Magazine, v. 8, n. 90, 2011, pp. 6-15. 
[7] V. W. Setzer e F. S. C. Silva, Banco de Dados. São Paulo: Edgard 
Blucher LTDA, 2005. 
[8] A. Silberchatz, H. F. Korth e S. Sudarshan, Sistemas de Banco de 
Dados. São Paulo: Addison Wesley, 1999. 
[9] J. A. N. G. Manzano, Oracle Database 10g Express Edition-Interativo 
Guia Básico e Desenvolvimento. São Paulo: Érica, 2007. 
[10] M. A. Souza, SQL, PL/SQL, SQL * PLUS. Rio de Janeiro: Ciência 
Moderna Ltda, 2004. 
[11] R. Dewson, SQL Server 2008 para Desenvolvedores. Rio de Janeiro: 
Alta Books, 2009. 
[12] G. L. Mark, Fundamentos de sistemas de gerência de Banco de 
Dados. Rio de Janeiro: LTC, 2006. 
[13] M. Pichiliani, “Processamento paralelo de instruções SQL,” SQL 
Magazine, v. 8, n. 91, 2011, pp.10-20.

Continue navegando

Outros materiais