Escolar Documentos
Profissional Documentos
Cultura Documentos
Namibe/2020
1
Índice
Introdução à SQL............................................................................................................... 3
Subconjuntos ..................................................................................................................3
Linguagem de definição de dados..................................................................................... 3
Linguagem de manipulação de dados ............................................................................... 4
Linguagem de controle de dados ...................................................................................... 4
O MySQL ........................................................................................................................... 5
Vantagens do MySQL.....................................................................................................5
Compatibilidade .............................................................................................................5
Licença ...........................................................................................................................5
Criação de tabelas em SQL ................................................................................................ 6
Criação da Base de Dados ...............................................................................................6
Tabelas ...........................................................................................................................6
Inserção de dados ...........................................................................................................6
Visualizar a tabela ..........................................................................................................7
Tipos de Dados em SQL ..................................................................................................... 7
Tipo de dados Numéricos ................................................................................................7
Tipo de dados Literal ......................................................................................................7
Tipo de dados Data/Tempo .............................................................................................8
Tipo de dados Espacial ...................................................................................................8
Chave primária (primary key) ........................................................................................... 8
Manipulação de dados em SQL .......................................................................................... 9
Alter Table .....................................................................................................................9
Manipulação dos registos em SQL.................................................................................... 10
UPDATE ...................................................................................................................... 10
DELETE ....................................................................................................................... 11
Truncate table .............................................................................................................. 11
Chave estrangeira (Foreign key)....................................................................................... 11
Joins ................................................................................................................................. 12
Order by........................................................................................................................... 12
2
Introdução à SQL
SQL: É uma linguagem de programação criada para gerar, manipular e consultar a
informação guardada em base de dados relacional. A sigla SQL (Structured Query
Language) significa em português Linguagem de consulta estruturada.
MySQL
Oracle
Postgre SQL
SQL possibilita ainda a criação de relações entre tabelas e o controlo de acesso aos dados.
Subconjuntos
A linguagem SQL é dividida em subconjuntos de acordo com as operações que queremos
efetuar sobre um banco de dados:
CREATE - Usado para criar uma nova tabela, uma visão de uma tabela, ou outro objeto
em um banco de dados.
ALTER - Usado para modificar um objeto existente de um banco de dados, como uma
tabela.
DROP - Usado para apagar toda uma tabela, uma visão de uma tabela ou outro objeto em
um banco de dados.
3
Linguagem de manipulação de dados (ou DML, de Data Manipulation Language) é o
grupo de comandos dentro da linguagem SQL utilizado para a recuperação, inclusão,
remoção e modificação de informações em bancos de dados.
Os principais comandos DML são:
SELECT (Consulta).
CONNECT
SELECT
INSERT
UPDATE
DELETE
4
O MySQL
É um SGBD (Sistema Gerenciador de Banco de Dados) relacional, que utiliza a
linguagem SQL (Linguagem de Consulta Estruturada). MySQL também é multiusuário e
multitarefas.
Este SGBD inicialmente foi desenvolvido para trabalhar com projetos de pequeno e
médio porte, com a capacidade de suportar por volta de cem milhões de registros em cada
tabela, podendo chegar ao tamanho médio de aproximadamente cem megabytes por
tabela. Porém, hoje em dia o MySQL ultrapassa extraordinariamente esses limites e
capacidades das versões anteriores.
Vantagens do MySQL
MySQL é conhecido por ser de fácil utilização, e usado por empresas que trabalham com
grandes volumes de dados, tais como, NASA, Bradesco, HP, Sony entre outras grandes
empresas de renome. Possui uma interface extremamente simples e é compatível com
grande parte dos sistemas operativos.
Essas são algumas das grandes características que fazem o MySQL ser tão utilizado
atualmente e estar em constante crescimento e atualizações.
Compatibilidade
MySQL é compatível com a maioria dos sistemas operativos existentes atualmente no
mercado. Pelo fato de ser desenvolvido em C e C++, isso faz com que seja extremamente
fácil sua acessibilidade entre os diversos sistemas operativos.
Linux: Sendo compatível com as principais versões, como Fedora, Core, Debian, SuSE
e RedHat.
FreeBSD.
Mac OS X Server.
Licença
O MySQL é de Código Aberto (Open-Source), desenvolvido e distribuído sob as licenças
GNU/GLP (Licença Publica Geral), que determina o que se pode ou não fazer à
ferramenta e demais recursos. Além do programa, o seu código-fonte também é
disponibilizado para que qualquer usuário possa editá-lo de forma que atenda suas
necessidades.
Utilização: Permite que o usuário faça uso do software para qualquer finalidade.
5
Didática: Permite que seu funcionamento seja estudado através de seu código-fonte
Colaboração: Possibilita que seu código-fonte seja modificado para evoluir a ferramenta.
Para criar uma base de dados é importante usar uma ferramenta que facilite todo o
processo. Uma das ferramentas mais usada para este efeito é o MySQL WorkBench que
disponibiliza as mais diversas funcionalidades.
Nota: é necessário habilitar o uso da base de dados usando o comando use “Nome da
base de dados”
Use Loja;
Tabelas
…);
6
A sintaxe para tal é: Insert into “nome da tabela” values (‘Dado1’, ‘Dado 2’);
Visualizar a tabela
Para visualizar os dados da tabela devemos usar um comando que faz a selecção dos
dados que queremos ver. No caso de ver todos os dados da tabela, basta usar o asterisco.
Numéricos;
Literal;
Data/Tempo;
Espacial.
7
Tipo de dados Data/Tempo
Data/Tempo é o tipo de dado usado para especificar datas e horas. Este se subdivide
em:
Date;
DateTime;
TimeStamp;
Time;
Year .
Geometry
Point;
Polygon;
Multipolygon
Por defeito, os campos podem ter valores nulos. Se pretendermos não definir campos
como nulos temos de os definir usando a constraint Not null.
8
(default, 'Massa','2018-03-15');
9
Rename to “novo nome”.
Ex: vamos mudar o nome da tabela Cliente para Clientes
ALTER TABLE Cliente
Rename to Clientes;
Eliminar a tabela: A sintaxe da função é
drop table“nome da tabela” ;
Ex: crie a tabela Vendas com os campos
Cliente varchar 20;
Produto varchar 20;
DataVenda date.
Insira três dados na tabela.
Mude o nome da tabela para Marimbondo.
Elimine a tabela.
update produtos
where id='1';
update produtos
where id='2';
10
DELETE
Quando um determinado registo já não for útil na nossa base de dados, haverá a
necessidade de eliminar esse registo. Para tal, usamos o comando DELETE.
A sintaxe é:
where id='2‘;
Truncate table
A palavra Truncate literalmente significa cortar o topo. Esse comando é usado para
eliminar todos os registos da tabela.
A sintaxe é:
ou
ou
truncate produtos;
Nota: Durante a aula, vimos apenas exemplos de manipulação dos registos usando a
chave primária (id). No entanto, é possivel manipular os registos a partir dos outros
campos da tabela, levando em conta alguns pormenores importante.
Ex: vamos criar uma base de dados com o nome de “Ensino” com as tabelas Alunos
e cursos.
11
Alunos (id_aluno, nome_aluno, data_nasc);
cursos(id_curso, curso);
Joins
São comandos usados para se obter dados provenientes de duas ou mais tabelas
baseado num relacionamento entre elas. Os joins podem ser de dois tipos:
Inner join: retorna as linhas quando houver pelo menos uma correspondência em
ambas as tabelas.
Outer join: retorna as linhas mesmo quando não houver pelo menos uma
correspondência em uma das tabelas ou em ambas.
No caso de tabelas relacionadas, devemos usar o inner join ou simplesmente join com
um outro comando de nome ON.
Vamos ver agora o resultado da relação feita entre a tabela aluno e cursos:
Order by
É o comando usado para ordenar um conjunto de registos. Podemos ordenar os
registos de forma ascedente(ASC) ou descendente (DESC). A sintaxe é:
Nota: no caso da ordem ascendente, não precisamos de usar a palavra ASC comando.
Ex: vamos ordenar o nosso join criado:
12