Desvendando o SQL - Parte I - Introdução
Oi gente,
Depois de um tempo estou de volta. Essa semana um amigo me pediu algumas dicas de SQL e pensando achei que se ele tem dúvidas outros também podem ter então decidir iniciar uma série de artigos mostrando um pouco da linguagem SQL. Desde já agradecendo ao amigo de profissão James Moura pela ideia.
O que é SQL
Impossível pensar em qualquer aplicação sem dados e para manipular esses dados existem n bancos de dados disponíveis e conhecido de muitos, dentre os mais conhecidos estão o ACCESS, SQL Server, Firebird, MySQL, PostGree, Oracle. Todos têm suas ferramentas de manipulação, mas internamente, claro que com poucas diferenças de comandos, todos utilizam uma linguagem própria, é ai que entra o SQL, que tem a função de manipular os dados, e é nessa linguagem que focaremos nossos artigos, optei por mostrar como é feito tudo via script, começaremos com o básico como: criar um banco de dados, uma tabela, incluir, consultar, alterar e apagar alguns dados, dentre outros comandos disponíveis. Ao longo poderemos ir aprofundando os comandos utilizados.
Criada nos anos 70 a Structured Query Language ou SQL trata-se de um conjunto completo de comandos que permite ao usuário acessar um banco de dados relacional. É uma linguagem não procedural que permite dizer apenas o que você quer e não como fazer isto.
Podemos dividir a linguagem em alguns módulos:
Data Definition Language (DDL) (Linguagem de definição de dados): fornece comandos para definição, modificação e remoção de tabelas, criação de índices, definição de visões. Inclui também comandos para especificação de direitos de acessos a tabelas e visões.
- CREATE TABLE
- CREATE INDEX
- CREATE VIEW
- ALTER TABLE
- ALTER INDEX
- DROP INDEX
- DROP VIEW
- CREATE PROCEDURE
- CREATE FUNCTION
Interactive Data Manipulation Language (DML) (Linguagem de manipulação de dados interativa): inclui uma linguagem de consulta baseada na álgebra relacional e no cálculo relacional de tuplas (linhas). Possui também comandos para inserir, remover e modificar linhas num banco de dados.
- SELECT
- INSERT
- UPDATE
- DELETE
Integrity (Integridade): possui comandos para se especificar restrições de integridade, como chaves primárias e chaves estrangeiras.
- PRIMARY KEY
- FOREIGN KEY
Transaction control (Controle de Transações): inclui comandos para especificação de início e fim de transações, visando a integridade dos dados no momento em que ocorrem atualizações.
- BEGIN TRANSACTION
- COMMIT
- ROLLBACK
Temos também alguns outros comandos que serão utilizados ao longo dos artigos como:
Cláusulas
As cláusulas são condições de modificação utilizadas para definir os dados que deseja selecionar ou modificar em uma consulta.
FROM
|
Utilizada
para especificar a tabela que se vai selecionar os registros.
|
WHERE
|
Utilizada
para especificar as condições que devem reunir os registros que serão
selecionados.
|
GROUP BY
|
Utilizada
para separar os registros selecionados em grupos específicos.
|
HAVING
|
Utilizada
para expressar a condição que deve satisfazer cada grupo.
|
ORDER BY
|
Utilizada
para ordenar os registros selecionados com uma ordem especifica.
|
DISTINCT
|
Utilizada
para selecionar dados sem repetição.
|
Operadores Lógicos
AND
|
E lógico.
Avalia as condições e devolve um valor verdadeiro caso ambos sejam corretos.
|
OR
|
OU
lógico. Avalia as condições e devolve um valor verdadeiro se algum for correto.
|
NOT
|
Negação
lógica. Devolve o valor contrário da expressão.
|
Operadores Relacionais
O SQL possui operadores relacionais, que são usados para realizar comparações entre valores, em estruturas de controle.
Operador
|
Descrição
|
<
|
Menor
|
>
|
Maior
|
<=
|
Menor ou
igual
|
>=
|
Maior ou
igual
|
=
|
Igual
|
<>
|
Diferente
|
BETWEEN
|
Utilizado
para especificar um intervalo de valores.
|
LIKE
|
Utilizado
na comparação de um modelo e para especificar registros de um banco de dados.
"Like" + extensão % significa buscar todos resultados com o mesmo
início da extensão.
|
IN
|
Utilizado
para verificar se o valor procurado está dentro de uma lista. Ex.: valor IN
(1,2,3,4).
|
Funções de Agregação
As funções de soma são usadas dentro de uma cláusula SELECT em grupos de registros para devolver um único valor que se aplica a um grupo de registros.
AVG
|
Utilizada para calcular a média dos valores de um campo
determinado.
|
COUNT
|
Utilizada para devolver o número de registros da seleção.
|
SUM
|
Utilizada para devolver a soma de todos os valores de um campo
determinado.
|
MAX
|
Utilizada para devolver o valor mais alto de um campo
especificado.
|
MIN
|
Utilizada para devolver o valor mais baixo de um campo
especificado.
|
COLOCANDO A MÃO NA MASSA
Ao longo de nossos artigos vamos utilizar como ferramenta o Microsoft® SQL Server® 2008 Express, e a ferramenta de IDE para manipulação o Microsoft® SQL Server® 2008 Management Studio Express. Caso usem o Windows 8, o SQL Server 2008 pode causar problemas de compatibilidade, então aconselho usarem o Microsoft® SQL Server® 2012 Express. No caso da versão 2012 existe uma opção já completa, na Express with Tools já consta o Mecanismo
de banco de dados e o SQL Server Management
Studio Express.
Como não é o foco de nosso artigo, não me atentarei a instalação, as instruções de instalação estão nas páginas de download, caso tenham dúvidas estarei à disposição. Os comandos que serão utilizados funcionam na versão full do SQL Server 2008 como também na versão 2012 do SQL. Aproveitem até o próximo e façam a instalação das ferramentas pois já serão necessárias.
Ficamos por aqui, próximo artigo vamos iniciar explicando cada módulo em separado de forma teórica e prática.
Grande abraço a todos
Ficamos por aqui, próximo artigo vamos iniciar explicando cada módulo em separado de forma teórica e prática.
Grande abraço a todos
Comentários