segunda-feira, 19 de outubro de 2009

SQL - (Structured Query Language) - Parte 1




Introdução



A linguagem SQL, sigla de Structured Query Language(Linguagem de Query Estruturada) é uma linguagem para gerenciar um sistema de banco de dados.




E o que é um BANCO DE DADOS?


Um banco de dados é como um arquivo eletrônico, ou seja, tem a mesma função que qualquer outro arquivo, armazenar registros. A única diferença é que no banco de dados os registros são armazenados eletronicamente.


E para termos acesso aos registros armazenados ou mesmo cadastrar, alterar ou excluir estes registros precisamos de um sistema que gerencie o banco de dados (SGBD).


Este Gerenciador de banco de dados é que torna possíveis as operações com o conteúdo do arquivo, como: "Traga-me este registro", "Atualize este registro", "Adicione este registro"ou "Apague este Registro".




Sistema Gerenciador


Um Sistema Gerenciador de Banco de Dadosou Sistema Gestor de Base de Dados(SGBD)é o conjunto de programas de computador (softwares) responsáveis pelo gerenciamento de uma base de dados.


O principal objetivo é retirar da aplicação cliente a responsabilidade de gerenciar o acesso, manipulação e organização dos dados.

O SGBD disponibiliza uma interface para que os seus clientes possam incluir, alterar ou consultar dados.




Alguns Exemplos de SGBD’s

- PostgreSQL
- Firebird
- MySQL
- Oracle
- SQL-Server
- Sybase





SQL Server Enterprise Manager


É a principal ferramenta administrativa para o SQL Servere fornece uma MMCcompatível com interface do usuário, onde permite:


- Definir grupos de instâncias do SQL Server.
- Registrar servidores individuais em um grupo.
- Configurar o SQL Server todas as opções para cada servidor registrado.
- Criar e administrar todas as bases de dados SQL Server, objetos, logins, usuários e as permissões em cada servidor registrado.
- Definir e executar todas as tarefas administrativas do SQL Server em cada servidor registrado. - Testar comandos SQL, lotes e scripts interativamente utilizando o SQL Query Analyzer.




SQL Profiler


O SQL Server Profiler é uma ferramenta que captura eventos do SQL Server de um servidor. Os eventos são salvos em um arquivo de rastreamento que pode ser analisado ou usado para reproduzir uma série específica de etapas na tentativa de diagnosticar um problema.


Atividades, como:


- Acompanhamento de consultas para localizar a causa de possíveis problemas. (Localizar e diagnosticar consultas de execução lenta).
- Capturar a série de instruções Transact-SQL.
- Monitorar o desempenho do SQL Server para ajustar cargas de trabalho.


Oferece também suporte à execução de auditoria das ações executadas em instâncias do SQL Server. As auditorias registram ações relacionadas à segurança para análise posterior por um administrador do sistema.




SQL Query AnalyzerO


Query Analyzer é a ferramenta utilizada para executarmos as operações anteriormente citadas:

- "Traga-me este registro"
- "Atualize este registro"
- "Adicione este registro"
- "Apague este Registro"






Instruções 01:"Traga-me este registro!"

SELEÇÃO SIMPLES

O principio básico de uma consulta é primeiramente saber "O Que" eu quero realmente consultar, ou seja, antes de qualquer intervenção no Banco de Dados você deverá ter claramente o que precisa ser verificado.


Os retornos SQL (CONSULTA), independente do SGBD, serão sempre no formato Linhas de Registros(Rows) e Colunas da Tabela (Columns). O Comando Inicial para qualquer Seleção é:

SELECT




O SELECTé sempre acompanhado basicamente pelo "*" que indica a seleção de todas as Colunas da tabela, da palavra FROM(Para) e do NOME da TABELA.

-Exemplo 1: {SELECT * FROM TABELA}
- Exemplo 2:{SELECT CAMPO FROM TABELA}
- Exemplo 3:{SELECT CAMPO1, CAMPO2 FROM TABELA}




CONDIÇÕES (Cláusulas)


Podemos também utilizar filtros para as seleções que montarmos. É onde começaremos a abordar a cláusula WHERE


A cláusula WHEREreduz o escopo da Query focalizando apenas determinadas linhas. Ao invés de retornar os valores das expressões da cláusula SELECTde todas as linhas, uma Query com uma cláusula WHEREretorna apenas os valores das linhas que atendam às condições especificadas na cláusula




Operadores Relacionais


Existem 13 (treze) operadores relacionais utilizados para expressar condições de pesquisa. Os operadores Relacionais são sinais ou sintaxes que são utilizados em uma cláusula WHERE.



= igual a
!= ou <>não igual a
> maior que
!> não maior que
<>= maior ou igual a
<= menor ou igual a BETWEEN...AND Registro entre uma faixa de valores IS NULL Registro igual a vazio. LIKE Registros semelhantes IN Registros dentro de um Conjunto




Exemplos: Cláusula WHEREe Operadores Relacionais


1)Selecionar o Registro na tabela CLIENTES onde o Código do Cliente seja igual à 12345.{SELECT * FROM CLIENTES WHERE CODIGO = 12345}


2) Selecionar o Registro na tabela CLIENTES onde o Código do Cliente seja diferente
à 12345.


{SELECT * FROM CLIENTES WHERE CODIGO <> 12345}
OU
{SELECT * FROM CLIENTES WHERE CODIGO != 12345}


3) Selecionar os registros na tabela ALUNOS onde a idade seja maior que 20.
{SELECT * FROM ALUNOS WHERE Idade > 20}


4) Selecionar os registros na tabela ALUNOS onde a idade seja menor que 40.

{SELECT * FROM ALUNOS WHERE Idade <>

5)Selecionar os registro na tabela FUNCIONARIOS onde o Salário seja maiorou igual à R$ 1500,00.{SELECT * FROM FUNCIONARIOS WHERE SALARIO >= ‘1500,00’}


6) Selecionar os registro na tabela FUNCIONARIOS onde o Salário seja menor
ou igual à R$ 350,00.
{SELECT * FROM FUNCIONARIOS WHERE SALARIO <= ‘350,00’}


7) Selecionar os registros na tabela ALUNOS onde a idade esteja entre 10 e 15 anos. {SELECT * FROM ALUNOS WHERE Idade BETWEEN 10 AND 15}


8) Selecionar os registros na tabela CLIENTES onde o campo CPF seja vazio.
{SELECT * FROM CLIENTES WHERE CPF is Null}



9)Selecionar os registro na tabela CONTATOS onde o nome comece com a seqüência de Caracteres "MA" {SELECT * FROM CONTATOS WHERE NOME LIKE ‘MA%’}Obs.: Para pesquisa do Like usa-se o sinal de porcentagem (%) na posição em que será pesquisado a continuidade do texto.


10)Selecionar os registros na tabela CLIENTES onde os códigos sejam:12345, 654321, 323233 e 121213.{SELECT * FROM CLIENTES WHERE CODIGO IN(12345, 654321, 323233,121213)}




CONDIÇÕES MULTIPLAS (Cláusulas WHERE)

Predicados: ANDe OR


Podemos restringir ainda mais a seleção de linhas usando uma cláusula WHEREcom mais de uma condição de pesquisa. Isto se faz possível através dos operadores ANDe OR.

Instruções 01:"Traga-me este registro!


"Exemplo 01:{SELECT * FROM CLIENTES WHERE CODIGO = 12345 AND CPF Is Null}

Exemplo 02:
{SELECT * FROM CLIENTES WHERE CPF Is Null OR NOME LIKE ‘MARIA%’}




2 comentários:

  1. Interessante o post, é bem eficiente na hora de tirar dúvidas básicas que temos toda hora.

    vlw.

    Att: Jozimar.

    ResponderExcluir
  2. Bacana esse material de SQL!! rs
    Deu pra tirar algumas dúvidas...

    ResponderExcluir