O documento apresenta uma introdução à linguagem SQL, ensinando como criar e manipular bancos de dados e tabelas, inserir, alterar e consultar dados. É explicado como utilizar comandos como CREATE DATABASE, CREATE TABLE, INSERT, UPDATE, SELECT, JOIN, ORDER BY, COUNT, DISTINCT, LIKE.
1. Seminário de Banco de
Dados I
Grupo 1 - Introdução ao SQL
Turma: 2° Período - Análise e Desenvolvimento de Sistemas.
Alunos: João Antonio, Luan Vinícius, Mateus Nunes, Rafael Caymmi.
2. Introdução ao SQL
A sigla SQL abrevia a expressão Structure Query
Language (em português, Linguagem Estruturada de
Consulta), nome dado à linguagem responsável pela
interação com os dados armazenados na maioria dos bancos
relacionais.
As ferramentas de manipulação gráfica de dados (MySQL,
por exemplo) utilizam a linguagem SQL para interagir com o
banco de dados. Os terminais de texto também fazem uso de
tal recurso.
3. Criando um Banco de dados
Para criar um banco de dados é necessário utilizar o comando com a
seguinte sintaxe:
CREATE DATABASE ‘escola’;
Após o CREATE DATABASE é preciso informar o nome o qual o banco de
dados irá receber, sempre entre aspas, neste caso o nome deste será
escola.
4. Criando uma tabela
Utilizando o comando a seguir permite-se criar uma tabela em um banco
de dados.
CREATE TABLE IF NOT EXISTS `aluno` ()
ENGINE = InnoDB DEFAULT CHARSET = utf8 AUTO_INCREMENT = 1;
Após o CREATE TABLE, entre aspas é informado o nome da tabela.
Entre os parênteses são informados as colunas da tabela e suas
propriedades.
5. Inserindo dados em uma tabela
Após criar uma tabela, a mesma precisa ser preenchida, para isso existe
o comando INSERT (Inserir), que utiliza-se da seguinte sintaxe:
INSERT INTO aluno (Nome, Matricula, Email)
VALUES ('Mateus', '20151001', 'mateus@email.com');
Identifique a tabela a ter dados inseridos;
Informe a(s) coluna(s) que terá dados inseridos.
Insira os novos dados após a clausula VALUES.
6. Alterando tabelas
O SQL permite realizar alterações nas estruturas das tabelas através do
comando ALTER TABLE (Alterar tabela), com a seguinte sintaxe:
ALTER TABLE professor ADD Area
VARCHAR(100)
DEFAULT NULL;
Com este comando é possível realizar alterações tais como:
Adicionar, remover ou renomear uma coluna;
Definir um valor padrão para uma coluna;
Renomear uma tabela.
7. Atualizando os dados
Para realizar a atualização de dados em uma coluna é utilizado o
comando UPDATE (Atualizar/Alterar), o qual o SQL usa a sintaxe:
UPDATE aluno SET Nome = 'Luan Santana' WHERE Id = 4;
Identifique a tabela a ser atualizada;
Após a clausula SET, liste a(s) coluna(s) a qual você deseja atualizar.
Determine o novo valor.
A clausula WHERE é utilizada quando é necessário uma ou mais
condições para que o comando seja executado.
8. Realizando consultas no Banco de
Dados
Para realizar buscas de informações em uma ou mais tabelas de um
banco de dados, se utiliza a clausula SELECT (Selecione).
SELECT Nome, Matricula, Email FROM aluno;
Após o SELECT informe a(s) coluna(s) no qual será procurada a
informação desejada. Pode-se utilizar o “*” para buscar em todas as
colunas.
Depois de FROM indique a tabela da qual será solicitada a informação.
9. Consultas em duas ou mais
tabelas
Utilizando a clausula JOIN (Junção) é possível realizar pesquisas em
duas ou mais tabelas, funcionando como união destas duas tabelas, desde
que as mesmas possuam relação.
SELECT Nome, Matricula FROM aluno
JOIN aluno_turma
ON (aluno.Id = aluno_turma.Aluno)
WHERE aluno_turma.Turma = 1;
Após o JOIN são indicadas outras tabelas a serem utilizada na pesquisa.
Posteriormente ao ON e informada condição de junção das entre as
tabelas.
10. Consultas com ordenação
Com o comando ORDER BY (Ordernar por) é possível realizar uma
consulta e solicitar que a mesma venha de forma ordenada, seja de forma
ascendente, ASC, ou descendente, DESC, ou por uma expressão.
SELECT Nome, Matricula FROM aluno
JOIN aluno_turma
ON (aluno.Id = aluno_turma.Aluno) WHERE aluno_turma.Turma = 1 ORDER
BY Nome ASC;
Seguido de ORDER BY, é indicada tabela(s) e a forma de ordenação.
11. Consultando dados que estejam ou
não em uma tabela
Usasse o comando IN (Dentro) para indicar que um dado está presente
em 2 ou mais tabelas, como o exemplo abaixo:
SELECT Nome, Matricula FROM aluno
JOIN aluno_turma
ON (aluno.Id = aluno_turma.Aluno)
WHERE aluno_turma.Turma IN (2,3)
ORDER BY Nome ASC;
Seguido do IN é informado o dado solicitado, que esteja presente em
ambas as tabelas.
12. Consultando dados que estejam ou
não em uma tabela
Ao contrário do IN (Dentro), o NOT IN (Não dentro) solicita que o dado a
ser consultado não esteja em nenhuma das tabelas indicadas após a
clausula.
SELECT Nome, Matricula FROM aluno
JOIN aluno_turma }
ON (aluno.Id = aluno_turma.Aluno)
WHERE aluno_turma.Turma NOT IN (2,3)
ORDER BY Nome ASC;
O NOT IN exclui as informações que foram informadas após a clausula.
13. Pesquisa de totalidades em um BD
Em algumas ocasiões é preciso saber a quantidade de certos objetos
com a mesma característica, sendo estas usadas para estatísticas.
Para consultar essas totalidades em um Banco de Dados, é usado o
comando COUNT (Contagem), com a sintaxe:
SELECT Nome, COUNT(*) AS Total FROM turma
JOIN aluno_turma
ON (turma.Id = aluno_turma.Turma)
GROUP BY aluno_turma.Turma;
Seguida da clausula COUNT é informada a condição que há de ser
satisfeita para que o dado entre na contagem, ou entre parênteses um “*”
para selecionar todos.
14. Consultando dados distintos
Quando se é preciso buscar todos os dados distintos (diferentes) dentro
de uma tabela, é usada a clausula DISTINCT (Distinto).
SELECT DISTINCT Email FROM aluno;
O DISTINCT irá fazer com que todas as informações solicitadas não sejam
repetidas.
15. Consultando dados previamente
estabelecidos
Com o comando LIKE (Parecido, Como) é realizada a pesquisa de dados
em que os mesmos sejam previamente informados, retornando dados
parecido ou exatamente como os solicitados.
SELECT Id, Nome FROM aluno
WHERE Nome
LIKE '%SILVA%‘;
Após o LIKE será informado a condição, sendo que a pesquisa irá retornar
um dado que seja igual ou que contenha parte da mesma.