Buscar

Livros Digitais - Unidade 01 - ebook3

Prévia do material em texto

Grupo SER Educacional | Tecnologias e Linguagens de Banco de Dados 1 
 
 
 
 
TECNOLOGIAS E LINGUAGENS DE 
BANCO DE DADOS 
Tecnologias e Linguagens de 
 Banco de Dados
 
JOÃO DANILO NOGUEIRA 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
LINGUAGENS DE 
MANIPULAÇÃO DE 
BANCO DE DADOS 
 
 
 
 
 
AULA 03 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
Diretor Executivo 
DAVID LIRA STEPHEN BARROS 
 
Direção Editorial 
ANDRÉA CÉSAR PEDROSA 
 
Projeto Gráfico 
MANUELA CÉSAR DE ARRUDA 
 
Autor 
JOÃO DANILO NOGUEIRA 
 
 
Desenvolvedor 
CAIO BENTO GOMES DOS SANTOS 
 
 
 
 
 
 
 
O Autor 
 
 
João Danilo Nogueira 
 
Olá. Meu nome é João Danilo. Sou graduado em Ciência da Computação 
pela Faculdade Grande Fortaleza (FGF) e amo programar. Atualmente, o 
foco de minha expertise é na área de gerenciamento de projetos, teoria 
dos números, RSA e criptografia. Vai ser um prazer enorme ajudar VOCÊ a 
se tornar um excelente desenvolvedor de software ou administrador de 
banco de dados. Conte comigo para lhe ajudar nessa trajetória rumo ao 
seu desenvolvimento profissional! Muito sucesso para você. 
 
 
 
JOÃO DANILO NOGUEIRA 
 
“ 
 
 
Iconográficos 
Olá. Meu nome é Manuela César de Arruda. Sou o responsável pelo 
projeto gráfico de seu material. Esses ícones irão aparecer em sua trilha 
de aprendizagem toda vez que: 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
INTRODUÇÃO 
para o início do 
desenvolvimento de 
uma nova 
competência; 
DEFINIÇÃO 
houver necessidade de 
se apresentar um novo 
conceito; 
NOTA 
quando forem 
necessários 
observações ou 
complementações 
para o seu 
conhecimento; 
IMPORTANTE 
as observações 
escritas tiveram 
que ser priorizadas 
para você; 
EXPLICANDO 
MELHOR 
algo precisa ser 
melhor explicado ou 
detalhado; 
VOCÊ SABIA? 
curiosidades e 
indagações lúdicas 
sobre o tema em 
estudo, se forem 
necessárias; 
SAIBA MAIS 
textos, referências 
bibliográficas e links 
para aprofundamento 
do seu conhecimento; 
REFLITA 
se houver a necessidade 
de chamar a atenção 
sobre algo a ser refletido 
ou discutido sobre; 
ACESSE 
se for preciso acessar 
um ou mais sites 
para fazer download, 
assistir vídeos, ler 
textos, ouvir podcast; 
 
RESUMINDO 
quando for preciso se 
fazer um resumo 
acumulativo das 
últimas abordagens; 
ATIVIDADES 
quando alguma 
atividade de 
autoaprendizagem for 
aplicada; 
TESTANDO 
quando o 
desenvolvimento de 
uma competência for 
concluído e questões 
forem explicadas; 
 
 
Sumário 
1 LINGUAGENS DE MANIPULAÇÃO DE BANCO DE DADOS ............................................ 6 
1.1 As linguagens de um SGBD .................................................................................... 6 
1.1.1 A linguagem SQL ....................................................................................... 7 
1.1.2 A linguagem DDL ...................................................................................... 8 
1.1.3 A linguagem DML ................................................................................... 10 
1.1.4 A linguagem DCL..................................................................................... 13 
Considerações Finais ................................................................................................ 15 
Atividades de Autoaprendizagem .............................................................................. 15 
Questionário Avaliativo ............................................................................................ 15 
Bibliografia .............................................................................................................. 16 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
Tecnologias e Linguagens de Banco de Dados | Danilo Nogueira | 6 
 
 
1 Linguagens de Manipulação de Banco de 
Dados 
INTRODUÇÃO: 
Calma. Ainda não iremos aprender a codificar instruções de consulta, 
atualização e definição de dados, mas tão somente compreender às 
formas de aplicação dessas linguagens no ambiente interativo e em 
programas, nas mais variadas linguagens. Ao longo desta aula, iremos 
apenas entender o princípio de funcionamento das linguagens SQL, DDL, 
DML e DCL. Como veremos, na sequência, cada uma dessas linguagens 
reúne comandos capazes de consultar, definir, manipular e controlar a 
segurança dos dados em um SGBD. 
 
 
1.1 As linguagens de um SGBD 
 
Todo SGBD relacional é baseado em um conjunto de linguagens script 
baseadas na SQL – Structured Query Language (Linguagem Estruturada 
de Consultas). Como já dissemos anteriormente, essa linguagem foi 
convencionada pela ANSI (American National Standards Institute – 
Instituto Nacional Americano de Padrões). Isto significa dizer que a 
linguagem SQL é um padrão internacional, praticamente imutável de um 
SGBD para outro. 
Mas, quando se trata de definir, manipular e implementar rotinas de 
controle da segurança dos dados de um SGBD, os comandos começam a 
modificar-se significativamente de um ambiente para outro. Por isso, os 
comandos aceitos pelas linguagens dos SGBDs, de um modo geral, foram 
 
OBJETIVO: 
Ao término desta aula você será capaz de entender como funcionam as 
linguagens de manipulação de banco de dados . 
 
 
Tecnologias e Linguagens de Banco de Dados | Danilo Nogueira | 7 
 
 
classificados em quatro grupos distintos, como mostra o diagrama a 
seguir. 
 
 
1.1.1 A linguagem SQL 
 
 
 
 
 
 
 
 
 
A SQL foi a primeira das linguagens de banco de dados a ser criada e 
convencionada pelo ANSI. Seu objetivo primordial é permitir a consulta a dados 
em um banco de dados relacional. 
Por ser uma linguagem script, a SQL pode ser utilizada dentro de programas 
escritos nas mais variadas linguagens de programação do mercado mundial, 
tais como Java, PHP, Visual Basic, C#.Net, e até linguagens bastante antigas 
como o Cobol, por exemplo. 
É enorme a variação de cláusulas e condições empregáveis em um comando 
SQL. Dedicaremos uma aula inteira ao seu estudo, mais especificamente a 
respeito do comando SELECT, além de praticarmos exaustivamente a sua 
utilização em programas e scripts de consulta a tabelas de banco de dados. 
 
SQL DDL 
DML DCL 
Linguagens 
de BD 
A sigla SQL significa Structured Query Language 
(Linguagem Estruturada de Consultas) , e é utilizada por 
todos SGBDs com bancos de dados relacionais. 
DEFINIÇÃO 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
Tecnologias e Linguagens de Banco de Dados | Danilo Nogueira | 8 
 
 
1.1.2 A linguagem DDL 
 
 
 
 
 
 
 
 
 
 
Antigamente, a linguagem DDL era considerada como uma parte da SQL. 
Anos mais tarde, ela ganhou o status de linguagem autônoma e é 
utilizada, de um modo geral, para declarar e descrever as estruturas de 
dados de um BD. 
Os comandos DDL são capazes de criar, alterar e eliminar estruturas de 
dados, como tabelas, visões e associações (relacionamentos) entre elas. 
Uma vez criadas, essas estruturas incorporam os parâmetros utilizados no 
comando de criação/alteração da linguagem DDL, que ficam registrados 
no dicionário de dados do BD. 
 
 
 
 
 
 
 
 
 
 
Traduzindo ao pé da letra, podemos afirmar que a DDL 
significa Linguagem de definição de dados (Data Definition 
Language). O objetivo da DDL é oferecer um conjunto de 
comandos que permite a criação e modificação das 
estruturas de um banco de dados. 
DEFINIÇÃO 
O dicionário de dados é um conjunto de arquivos que 
contém os dados descritivos das estruturas do BD, como 
tabelas, visões e relacionamentos. A esses dados 
descritivos damos o nome de metadados, que são 
consultados pelo próprio BD a cada transação envolvendo 
suas estruturas. Para entender melhor, imagine que um 
certo programa queira manipular alguns campos como 
nome e endereçode uma tabela de clientes. Neste 
momento, o SGBD verificará se esses campos de fato 
pertencem a essa tabela, se estão associados a outras 
tabelas ou a índices (arquivos organizadores da tabela), 
entre outros requisitos definidos no ato da criação daquela 
tabela. 
EXPLICANDO MELHOR 
Tecnologias e Linguagens de Banco de Dados | Danilo Nogueira | 9 
 
 
A linguagem DDL é, portanto, uma linguagem interpretada, ou seja, é 
processada por um interpretador incorporado ao próprio SGBD, que 
podemos chamar também de DDL. 
São esses os comandos interpretados pelo DDL: 
 CREATE: Este comando constrói uma nova estrutura de dados, desde o 
próprio banco de dados, até suas estruturas mais simples, como tabelas, 
índices e consultas pré-programadas (que ficam armazenadas em forma 
de tabelas independentes). Dependendo do tipo de SGBD que se está 
utilizando, algumas estruturas podem e outras não podem ser criadas por 
este comando, no entanto, todos eles aceitam, pelo menos, a criação de 
tabelas, índices e usuários. Estudaremos mais detidamente o comando 
CREATE e suas várias formas de declaração mais adiante. 
 DROP: Este comando faz o oposto do CREATE, ou seja, elimina uma 
estrutura de dados, ou seja, é capaz de remover tabelas, visões, consultas 
armazenadas, índices, usuários, etc. 
 ALTER: Finalmente, o comando ALTER serve para modificar as 
estruturas de dados criadas anteriormente pelo comando CREATE, 
aplicando-se, portanto, a todos os tipos suportados por aquele comando, 
como tabelas, índices, usuários, consultas armazenadas, etc. 
Vejamos alguns exemplos desses comandos: 
 
CREATE TABLE funcionarios ( 
 Id INTEGER PRIMARY 
KEY, 
 Nome CHAR(50) null, 
 Sobrenome CHAR(75) not 
null, 
 Aniversario DATE null 
); 
 
 
O comando acima cria uma tabela de funcionários chamada 
“funcionários”. 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
Tecnologias e Linguagens de Banco de Dados | Danilo Nogueira | 10 
 
 
 
ALTER TABLE funcionários ADD Salario INTERGER; 
 
 
Este altera a tabela “funcionários” adicionando -lhe uma coluna (ou campo 
de dado) intitulada “Salario”. 
 
DROP TABLE funcionarios; 
 
 
Este comando elimina a tabela “funcionários” recém -criada. 
 
 
 
 
 
 
1.1.3 A linguagem DML 
 
Para começarmos nossa conversa sobre a linguagem DML, vamos colocar 
uma controvérsia logo de saída: o SQL faz ou não faz parte da DML? Mas, 
antes de respondermos essa pergunta, vamos entender, primeiramente, o 
que vem a ser DML? 
 
 
 
 
 
 
Não se preocupe em entender a sintaxe desses comandos 
agora. Voltaremos a ela mais adiante, como muitos 
exercícios e variações de casos. 
NOTA 
A sigla DML vem do inglês e significa Data Manipulation 
Language, ou seja, Linguagem de Manipulação de Dados. 
Em termos práticos, a linguagem DML tem por finalidade 
permitir a manipulação de dados, com as operações de 
inclusão, remoção e modificação de informações dentro 
das estruturas do banco de dados. 
DEFINIÇÃO 
Tecnologias e Linguagens de Banco de Dados | Danilo Nogueira | 11 
 
 
Pela definição acima, vemos que “manipular dados” tem a ver com 
modifica-los. No entanto, alguns autores defendem que a linguagem SQL 
faz parte desse conjunto, uma vez que, ao definir uma consulta à base de 
dados, uma estrutura de dados é criada, ainda que virtualmente. 
 
 
 
 
 
 
 
 
 
São esses os comandos integrantes da linguagem DML: 
 INSERT: Este comando é capaz de adicionar linhas a uma tabela, 
declarando todos os valores a serem gravados nos campos de dados 
desta nova linha. 
 UPDATE: Com uma sintaxe bastante similar à do INSERT, este comando 
é capaz de regravar dados em uma ou mais linhas da tabela que 
satisfaçam determinada condição. Essa condição é declarada como 
parâmetro do comando UPDATE, exatamente da mesma forma como se 
declara em um comando SELECT da linguagem SQL. 
 DELETE: Este comando remove logicamente uma ou mais linhas de uma 
tabela. Assim como o UPDATE, o comando DELETE se utiliza de inst ruções 
declarativas para determinar que conjunto de linhas deve ser excluído da 
tabela. A exclusão lógica provocada pelo processamento de um comando 
DELETE significa, por assim dizer, que as linhas podem ser recuperadas 
posteriormente. Mas esta operação tem uma série de implicações e, 
dependendo do SGBD, nem mesmo é permitida. 
Vamos visualizar alguns exemplos desses comandos? 
Ao se realizar uma consulta a um banco de dados, por 
mais simples que seja, o SGBD cria uma “tabela” 
temporária para conter apenas os dados resultantes do 
argumento daquela consulta. Assim, sendo, ao ser 
executado um comando SQL, uma “visão” daquele 
conjunto de dados é gerada dinamicamente. Inclusive, 
como veremos mais adiante, essa “visão” pode ser salva e 
manipulada como se fosse uma tabela independente. 
EXPLICANDO MELHOR 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
Tecnologias e Linguagens de Banco de Dados | Danilo Nogueira | 12 
 
 
 
INSERT INTO funcionários (nome, 
 salario) 
 VALUES ('Mário Alberto', 
 4500) 
; 
 
 
O comando acima adiciona uma nova linha na tabela “funcionarios” para 
o funcionário “Mário Alberto”, com um salário de R$ 1.500,00. 
 
UPDATE funcionarios; 
 SET salario = salario * 
1,1 
 WHERE salario > 1000 
; 
 
 
Já este comando acima altera o salário de todos os funcionários que 
ganham mais de R$ 1.000,00 com um aumento de 10%. 
 
DELETE FROM funcionarios; 
 WHERE situacao = “INATIVO” 
; 
 
 
Por fim, temos o comando DELETE que, no exemplo acima, exclui 
logicamente todos os funcionários cujo campo “situação” aparece como 
“INATIVO”. 
 
 
 
 
 
 
 
Voltaremos a esses comandos mais adiante, com muitos 
exemplos, exercícios e variações de caso. 
NOTA 
Tecnologias e Linguagens de Banco de Dados | Danilo Nogueira | 13 
 
 
1.1.4 A linguagem DCL 
 
Chegamos à última linguagem de nosso estudo de banco de dados. 
Diferentemente do SQL e DML, os comandos dessa linguagem diferem 
bastante de SGBD a SGBD, pois trata dos aspectos relacionados à 
segurança da informação. 
 
 
 
 
 
 
 
Basicamente, a linguagem DCL contempla três comandos: 
 GRANT: Este comando concede direitos a usuários e programadores 
para acessar, modificar e/ou eliminar tabelas e outras estruturas de 
dados de um BD. Na prática, você escolhe que comando poderá ser 
utilizado para que usuários, sob que condições, aplicado sobre que 
tabelas. 
 DENY: Já o comando DENY implementa um estado de exceção, ou seja, 
restringe a alguns usuários o acesso que acaba de ser dado por um 
comando GRANT, porém sem afetar os demais usuários que obtiveram 
acesso. 
 REVOKE: Este comando realiza a operação inversa do GRANT, ou seja, 
revoga uma permissão atribuída a alguém anteriormente. 
Diferentemente dos comandos SQL e DML propriamente ditos, os 
comandos DCL variam muito de gerenciador a gerenciador de BD. Alguns 
deles, por exemplo, sequer permitem que esses comandos sejam 
executados a partir de outros programas. 
 
 
A sigla DCL vem do inglês e significa Data Control 
Language, ou seja, Linguagem de Controle de Dados. Na 
prática, a linguagem DCL visa permitir a criação e 
revogação de políticas de acessos e restrições aos dados 
das tabelas e demais estruturas de dados de um BD. 
DEFINIÇÃO 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
Tecnologias e Linguagens de Banco de Dados | Danilo Nogueira | 14 
 
 
 
 
 
 
 
 
 
 
 
Voltaremos a esses comandos mais adiante, com muitos 
exemplos, exercícios e variações de caso. 
NOTA 
Tecnologias e Linguagens de Banco de Dados | Danilo Nogueira | 15 
 
 
Considerações Finais 
SAIBA MAIS: 
 
Apressado para ver cenas dos próximos capítulos? Acesse este link 
de aprofundamento e conheça os principais comandos da família de 
linguagensSQL: 
Artigo: “Os 10 comandos SQL que você não pode viver sem!”, 
acessível pelo link: https://becode.com.br/comandos-sql-nao-pode-viver-
sem/ (Acesso em 25/11/2017). 
 
 
 
Atividades de Autoaprendizagem 
ATIVIDADES: 
Pronto para consolidar seus conhecimentos? Leia atentamente o 
enunciado de sua atividade de autoaprendizagem proposta para esta 
aula. Se você está fazendo o seu curso presencialmente, é só abrir o 
seu caderno de atividades. Se você estiver cursando na modalid ade de 
EAD (Educação a Distância), acesse a sua trilha de aprendizagem no seu 
ambiente virtual e realize a atividade de modo online. Você pode 
desenvolver esta atividade sozinho ou em parceria com seus colegas de 
turma. Dificuldades? Poste suas dúvidas no fórum de discussões em seu 
ambiente virtual de aprendizagem. Concluiu a sua atividade? Submeta o 
resultado em uma postagem diretamente em seu ambiente virtual de 
aprendizagem e boa sorte! 
 
 
Questionário Avaliativo 
TESTANDO: 
Chegou a hora de você provar que aprendeu tudo o que foi abordado ao 
longo desta aula. Para isto, leia e resolva atentamente as questões do 
seu caderno de atividades. Se você estiver fazendo este curso a 
distância, acesse o QUIZ (Banco de Questões) em seu ambiente virtual 
de aprendizagem. 
 
 
https://becode.com.br/comandos-sql-nao-pode-viver-sem/
https://becode.com.br/comandos-sql-nao-pode-viver-sem/
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
Tecnologias e Linguagens de Banco de Dados | Danilo Nogueira | 16 
 
 
Bibliografia 
 
 
ZANETTE, A. (23 de Ago de 2016). Os 10 comandos SQL que você não pode viver 
sem! BeCode. Acesso em 25 de Nov de 2017, disponível em 
https://becode.com.br/comandos-sql-nao-pode-viver-sem/ 
 
 
 
 
 
 
 
 
 
 
 
Tecnologias e Linguagens de Banco de Dados | Danilo Nogueira | 17

Continue navegando