Baixe o app para aproveitar ainda mais
Prévia do material em texto
License-529754-46210-0-7 INTRODUÇÃO À INFORMÁTICA Comandos da linguagem SQL Nesta seção, conheceremos alguns conceitos referentes à linguagem de pesquisa padrão para banco de dados relacional e seus principais comandos. Linguagem SQL SQL é uma sigla que significa Structured Query Language, em português, Linguagem de Consulta Estruturada. É uma linguagem padrão de administração de dados que interage com os bancos de dados relacionais. Por meio da interação com o SGBD, executa várias tarefas como o gerenciamento de usuários, consultar informações, controlar transações etc., como ilustra a figura a seguir. Fonte: Wright Studio, Shutterstock, 2018. A SQL foi desenvolvida nos laboratórios da IBM, em 1974, por E.F.Codd, porém popularizou-se apenas no final da década. Devido ao enorme sucesso, em 1986, o American National Standard Institute (ANSI) foi obrigado a padronizar implementações da linguagem e, em 1987, foi a vez da International Organization for Standards (ISO). Dessa forma, a maioria dos bancos de dados segue essa padronização, com poucas variações. License-529754-46210-0-7 INTRODUÇÃO À INFORMÁTICA A linguagem tornou-se um grande padrão de banco de dados devido à sua simplicidade e facilidade de utilização. A principal diferença para os outros tipos de linguagem de consulta é que seu processo de consulta determina a forma do resultado e não o caminho para alcançá-lo. A SQL é, basicamente, uma linguagem declarativa, ou seja, o programador deve apenas informar qual a finalidade pretendida para que seja executada pelo SGBD relacional. Além disso, possibilita que seja criada uma relação entre as tabelas e o controle do acesso dos dados. Os principais sistemas que utilizam SQL são: SQL Server: considerado um dos maiores. É licenciado pela Microsoft; MySQL: usado na criação de BD em sistemas web. É um programa livre com código aberto; FirebirdSQL: usado em sistema operacional baseado no Unix e possui código aberto; Microsoft Access: integra o pacote Office da Microsoft, utilizado para fins educacionais; Oracle: presente em grandes corporações. Além da definição e manipulação, garante coerência, confidencialidade, integridade, backup e restauração dos dados; PostgreSQL: é um SGBD baseado em SQL; SQLite: pequeno BD de código aberto, possível de ser distribuído junto com a aplicação. Popular entre os desenvolvedores de software, devido às aplicações para dispositivos móveis. A linguagem SQL é usada para interagir com o SGBD e realizar várias tarefas, como inserção e modificação de registros, gerenciamento de usuários etc. Linguagem de acesso aos dados Como vimos, a linguagem SQL é padronizada e utiliza nas suas características uma junção de conteúdos e conceitos da álgebra e cálculo relacional e, também, de acordo com Takai (2003), possui vários enfoques. Vejamos alguns deles: License-529754-46210-0-7 INTRODUÇÃO À INFORMÁTICA • Linguagem de Definição de Dados (DDL – Data Definition Language): permite ao usuário manipular tabelas e elementos relacionados, como chave primário, índices etc. É utilizada pelo Administrador de Banco de Dados (DBA) e o projetista para determinar os esquemas da base de dados. Os principais comandos são: CREATE, DROP e ALTER (em alguns casos), como ilustra a figura a seguir; Fonte: Profiy_Image, Shutterstock, 2018. • Linguagem de Manipulação de Dados (DML – Data Manipulation Language): é considerado um subconjunto da linguagem SQL e é utilizada por usuários finais para selecionar (SELECT), inserir (INSERT), remover (DELETE) e atualizar (UPDATE) dados, como ilustra a figura a seguir; Fonte: Profit_Image, Shutterstock, 2018. License-529754-46210-0-7 INTRODUÇÃO À INFORMÁTICA • Linguagem de Controle de Dados (DCL – Data Control Language): realiza o controle da autorização de dados e da licença de usuários para manipular dados no BD. Alguns comandos são: GRANT (dá privilégios a usuários), REVOKE (revoga os privilégios), COMMIT (grava dados no banco de dados) e ROLLBACK (descarta os dados presentes desde o último COMMIT), como ilustra a figura a seguir; Fonte: Profit_Image, Shutterstock, 2018. • Linguagem de Consultas de Dados (DQL – Data Query Language): possui apenas o comando SELECT e é o mais utilizado, especialmente para a realização de consultas parametrizadas. O SELECT também é um comando da DML. Em resumo, segundo Chapman (2015), a SQL define as visões dos usuários de forma que, a partir dos requisitos, seja possível executar as tarefas; autoriza a criação de perfis de acesso com devidas restrições, permite que o DBA (administrador de banco de dados) determine as ressalvas de integridade dos dados, e executa o controle de transações realizadas na base de dados. A linguagem SQL possui diversos enfoques, como as linguagens de: definição de dados, manipulação de dados, controle de dados e consultas de dados. License-529754-46210-0-7 INTRODUÇÃO À INFORMÁTICA Comandos SQL Essa linguagem possui uma relação de comandos, cláusulas e operadores que compõem a sintaxe, isto é, a maneira como é escrita a estrutura da linguagem SQL, de forma que resulte uma ação. Vejamos na tabela abaixo algumas cláusulas e operadores usando o comando select. Cláusulas Operadores WHERE Condicional = Iguala ou atribui algo TO Para > Maior FROM De (origem) < Menor GROUP BY Agrupa >= Maior ou igual ORDER BY Ordena <= Menor ou igual SET Define <> Diferente TYPE Tipo MAX Máximo ELSE Senão, exceção MIN Mínimo UNION União AND E AS Como OR Ou BETWEEN Entre NOT Não, Negação Comandos DDL • CREATE: criação de uma base de dados; • USE: utiliza a base de dados criada para todos os comandos seguintes; • SHOW: mostra todas as bases de dados. É um comando útil quando se trabalha com várias bases de dados; • ALTER: realiza alguma modificação na tabela; • DROP: remove um elemento, podendo ser uma base de dados, uma tabela etc.; License-529754-46210-0-7 INTRODUÇÃO À INFORMÁTICA • RENAME: muda o nome do elemento, como uma tabela, por exemplo; • TRUNCATE: remove todos os dados de um elemento, sem excluir o elemento. Comandos DML • INSERT: utilizado para inserir dados em uma tabela; • UPDATE: atualiza o valor de um campo da tabela, para isso é necessário indicar na cláusula WHERE qual campo será modificado, caso contrário, atualiza a tabela inteira; • DELETE: remove todos os dados referentes a um determinado registro; • SELECT: seleciona elementos de uma tabela. Comandos aninhados Representam as junções de comandos para se obter resultados mais expressivos no processo de manipulação dos dados. Vejamos os exemplos abaixo. Exemplo 1: Deseja-se inserir dados de uma tabela existente em uma nova: INSERT INTO colab_gerentes(codigo,nome_colaborador, salário) SELECT codigo,nome_funcionarios, salario FROM colaboradores Descrição: será inserido na tabela “colab_gerentes” os dados da tabela colaboradores com salário maior ou igual a 3000. License-529754-46210-0-7 INTRODUÇÃO À INFORMÁTICA Exemplo 2: Deseja-se atualizar o salário dos colaboradores que recebem o menor salário em 10%: UPDATE colaboradores SET salario = salario * 1.1 WHERE salario = (SELECT MIN(salario) FROM colaboradores) Descrição: o comando irá atualizar em 10% a mais o salário dos colaboradores que recebem o menor salário. Exemplo 3: Deseja-se unir os dados de duas tabelas: SELECT *FROM produtos WHERE qtdade_produto BETWEEN 1 AND 200 EXCEPT SELECT *FROM produtos WHEREqtdade_produto BETWEEN 20 AND 25; Descrição: o comando irá selecionar todos os campos da tabela “produtos” que a quantidade esteja entre 1 e 200, exceto os campos da mesma tabela que a quantidade esteja entre 20 e 25. Exemplo 4: Deseja-se excluir todos os vendedores que não realizaram nenhum pedido: DELETE * FROM vendedor WHERE 0=(SELECT COUNT(*) FROM vendedor, pedido WHERE vendedor.cod_vendedor=pedido.cod_vendedor); Descrição: o comando removerá da tabela “vendedor” todos os códigos devendedores com o valor de pedido igual a zero. License-529754-46210-0-7 INTRODUÇÃO À INFORMÁTICA Exemplo 5: Deseja-se selecionar o nome e o salário de todos os colaboradores que possuem a mesma função que Maria: SELECT nome, salario FROM colaboradores WHERE funcao = (SELECT funcao FROM colaboradores WHERE nome = "Maria"); Descrição: o comando irá selecionar o nome e o salário na tabela “colaboradores” das pessoas que apresentam a mesma função que Maria. A linguagem SQL apresenta uma variedade de comandos, cláusulas e operadores que realizam a manipulação da base de dados.
Compartilhar