sábado, 25 de junho de 2016

Select

Olá!

O comando Select é utilizado para obter (visualizar, recuperar, buscar) os dados cadastrados no DB. É um comando de características e uso simples, e que possui vários comandos internos que permitem que o Select seja aplicado de diversas formas.

Uma forma básica de descrever esse comando, é: SELECIONE dados DA tabela; 
Em SQL:  SELECT campo(s) FROM tabela(s);

Assim, como foi apresentado no post anterior, os dados são armazenados no DB em objetos denominados de tabelas. Então, ao realizar alguma consulta em uma tabela de registros, será retornado como resposta um ou mais registros desta tabela. Assim, a resposta de uma instrução SELECT acaba sendo uma tabela. Para um melhor entendimento, veja o exemplo abaixo:

PESSOAresposta_da_consulta
CDNOMESOBRENOMEIDADECDNOMESOBRENOMEIDADE
1FelipeBarbosa234AlineSilva21
2AnaVieira205MairaDantas25
3JoãoSantos19
4AlineSilva21
5MairaDantas25

Vamos analisar, acima temos uma tabela PESSOA com 5 registros. Se realizarmos uma consulta nesta tabela que obtenha os registros que possuam o código maior que 3, será retornado 2 registros no resultado, conforme a tabela resposta_da_consulta. Observação, quando realizado um Select não é criado uma nova tabela no DB.

A sintaxe do comando Select:
1 - Para consultar um campo da tabela:

          SELECT nome_campo_1 
             FROM nome_tabela;

2 - Para consultar mais de um campo da tabela:
          SELECT nome_campo_1, nome_campo_2, nome_campo_3
             FROM nome_tabela;

3 - Para consultar dados sob uma determinada condição:
          SELECT nome_campo_1, nome_campo_2, nome_campo_3
             FROM nome_tabela
           WHERE condição;

4 - Para ordenar o resultado da consulta
          SELECT nome_campo_1, nome_campo_2, nome_campo_3
             FROM nome_tabela
     ORDER BY nome_campo_x;

Então, qual é a instrução SQL para o comando Select que realiza a consulta na tabela PESSOA e retorna a "tabela" resposta_da_consulta utilizadas no exemplo acima?

O comando para essa consulta:
          SELECT CD, NOME, SOBRENOME, IDADE
             FROM PESSOA
           WHERE CD > 3

Para essa consulta observe que está sendo retornado todos os campos da tabela consultada. No Select o carácter * significa todos. Então o comando: 
          SELECT *
             FROM PESSOA
           WHERE CD > 3
também retorna o mesmo resultado do SQL anterior.

Mas não é boa prática de programação utilizar o Select *. Pois imagine que foi definido que era para ser construído um SQL para buscar o CD, NOME, SOBRENOME e IDADE da tabela PESSOA para um relatório. E posteriormente (dias, meses, anos, muito tempo, ...) a tabela PESSOA teve a inclusão de mais campos, se a instrução SQL estiver com SELECT * irá também retornar os novos campos.

Então, uma boa prática de programação é colocar os nomes dos campos que estão sendos consultados no Select. Os demais comandos internos do Select será apresentado nos próximos post's!

Consultar a relação de Termos e Abreviaturas acesse aqui.
Até o próximo post!

quarta-feira, 22 de junho de 2016

Armazenar dados em tabelas

Olá!

Em um banco de dados (DB), os dados são armazenados em tabelas, e o conjunto de tabelas relacionadas entre si, formam um DB relacional. 

Mas o que é uma tabela?

Uma tabela (COLUNAS x LINHAS), sendo que as colunas representam os campos da tabela, e as linhas os registros que a tabela possui. Exemplo:

PESSOA
CD_PESSOANOMESOBRENOMEIDADE
1FelipeBarbosa23
2AnaVieira20
3JoãoSantos19
4AlineSilva21
5MairaVieira23

Então, a tabela acima denominada PESSOA, possui 4 campos: CD_PESSOA, NOME, SOBRENOME e IDADE. E contem 5 registros carregados nela.

As tabelas também possuem outras características, as duas principais e básicas são:

1. Chave primaria (Primary Key - PK)
A chave primaria da tabela pode ser somente um campo, denominando-se assim de chave simples, ou a composição de dois ou mais campos da tabelas, deste modo chama-se de chave composta. 
A chave de uma tabela tem como objetivo identificar o registro de forma exclusiva, ou seja, a chave de uma tabela não é repetida para outro registro.
No exemplo da tabela acima, o campo CD_PESSOA é a chave primaria da tabela PESSOA.

2. Chave estrangeira (Foreign Key - FK)

A chave estrangeira, é um ou mais campos que representam a chave primaria de outra tabela. No exemplo utilizado a tabela PESSOA não tem FK, assim, ela é uma tabela que não possui relacionamento com outra tabela.
  • Relacionamento entre tabelas
CARROMARCA_CARRO
CD_CARRONOMECD_MARCA_CARROCD_MARCA_CARRONOME
1Astra11Chevrolet
2Vectra12Ford
3Palio33Fiat
4Corsa14Jeep
5Fusion25Volkswagen
6Siena3
7Gol5

Temos agora duas tabelas, CARRO e MARCA_CARRO, sendo que estas tabelas possuem relacionamento entre elas. Pois na tabela CARRO o campo CD_MARCA_CARRO é uma chave estrangeira que representa a chave primaria da tabela MARCA_CARRO.

Então, para o terceiro registro da tabela CARRO, o nome da marcar do modelo cadastrado é Fiat, e também para o sexto registro desta tabela.

Deste modo, o campo CD_MARCA_CARRO, é o campo que realiza o relacionamento entre as tabelas CARRO e MARCA_CARRO.

Enfim, é claro, que não é somente as informações deste post que esclarecem como o armazenamento de dados em tabelas de DB é realizado. Pesquise na WEB e fique atento aos próximos post's !!!

Consultar a relação de Termos e Abreviaturas acesse aqui.

Até o próximo post!

sábado, 18 de junho de 2016

SQL Introdução

Olá!

Com este blog tenho com objetivo postar um pouco do minha Experiência SQL, de forma simples e amigável, que ajude a vocês a entenderem está linguagem, também as boas práticas e como evitar erros, assim aumentando a sua produtividade com o SQL. Vamos lá!!

Para o primeiro post, será apresentado uma introdução ao SQL.

O que significa SQL?
A sigla SQL é Structured Query Language, ou seja, Linguagem de Consulta Estruturada.

Para que serve?
Com essa linguagem você pode acessar (visualizar e manipular) os dados armazenados em um Data Base (DB).

O que é Data Base?
Data Base ou simplesmente DB, é o banco de dados, onde são armazenados os dados em objetos chamados de tabelas que são compostas por colunas e linhas. Sendo, que essas tabelas são relacionadas entre elas, e por esse motivo você pode ouvir a expressão de banco de dados relacional.

RDBMS, mais uma sigla!
Relational Data Base Management System (RDBMS), são os sistemas gerenciadores dos bancos de dados relacionais, esses gerenciadores possuem recursos que facilitam a vida do administrador do DB. 

O administrador de um DB também é conhecido pela sigla DBA (Data Base Administrator - Administrador de banco de dados), ele é responsável por gerenciar (monitorar, configurar, atualizar, ...) o banco de dados.

Então, o que é mesmo SQL?
SQL é uma linguagem de programação que permite acessar o banco de dados, para visualizar e manipular os dados do DB.

Com as próximas postagens, tenho a intenção de demonstrar o principais comandos dessa linguagem, como utiliza-los, curiosidades, boas práticas. Enfim, apresentar que o SQL é uma boa linguagem para se trabalhar.

Creditos também para W3Schools, ótimo site!

Consultar a relação de Termos e Abreviaturas acesse aqui.

Até o próximo post!