Introdução à Engenharia da
Computação
Banco de Dados
Sistemas isolados
Produção
Vendas
Compras
Banco de Dados
Banco de Dados
Banco de Dados
Produtos...
Produtos...
Produtos...
Desvantagens:
• Entrada repetida da mesma informação;
• Inconsistência de dados.
Definições
Banco de dados = “Conjunto de dados integrados que tem por
objetivo atender a uma comunidade de usuários”
Produção
Vendas
Compras
Banco de Dados
Produtos...
Sistemas integrados com dados compartilhados
Vantagens:
• Compartilhamento;
• Consistência e integridade.
Tabelas
• Uma tabela em um banco de dados relacional é
formada por linhas (registros) e colunas (campos).
•
O número e a ordem das colunas são fixos.
•
Cada coluna possui um nome.
•
O número de linhas é variável, refletindo a
quantidade de dados armazenados.
• Chave primária (Primary key, PK) identifica cada
registro de forma única.
SQL
• Structured Query Language (Linguagem de
Consulta Estruturada).
• Modelo relacional - 1970.
• Transações de processamento.
• Consultas, administração de dados, integridade
e recuperação.
• Linguagem padrão para Banco de Dados.
• Operações relacionais.
• Incluindo diferença, divisão, interseção, junção,
produto cartesiano, projeção e união.
DML, DDL, DCL
Linguagem de Manipulação de Dados (DML):
Linguagem que tem como função, pesquisa (select), atualização
(update), exclusão de registros (delete), para manipulação de
tabelas.
Linguagem de Definição de Dados (DDL):
Linguagem que tem como função, entre outras, criar tabelas,
índices e visões (create), alterar elementos estruturais do banco
(alter), e excluir estes elementos (drop).
Linguagem de Controle de Dados (DCL):
O objetivo principal é a segurança, que se dedica especificamente
aos comandos conceder (grant) e revogar (revoke).
INSERT
Insere dados (registros) nas tabelas
INSERT INTO tabela (campo1, campo2) VALUES
(valor1, valor2)
Ex: INSERT INTO Filme (codigo, titulo, ano)
VALUES (‘R001’, ‘A Lagoa Azul’, 1985)
INSERE O FILME COM CÓDIGO R001, TITULO A LAGOA AZUL E ANO 1985 NA TABELA FILME
*usar aspas nos valores quando o campo é do formato texto, quando é número não usar aspas
SELECT
Realiza consulta nos dados (registros) das
tabelas
SELECT campo1, campo2 FROM tabela WHERE
condição ORDER BY campo
* a cláusula WHERE é opcional, se não for utilizada não existe condição, portanto o comando será
aplicado sobre todos os registros da tabela
* a cláusula ORDER BY é opcional, ela diz por qual campo os resultados devem voltar ordenados
* se a consulta deve trazer todos os campos da tabela, ao invés de listá-los é possível usar um *
no lugar da lista de campos
SELECT
Ex: SELECT * FROM Filme
LISTA TODOS OS CAMPOS DE TODOS OS REGISTROS DA TABELA FILME
SELECT codigo, titulo FROM Filme ORDER BY
titulo
LISTA CODIGO E TITULO DE TODOS OS REGISTROS DA TABELA FILME, TRÁS ELES ORDENADOS PELO TITULO
SELECT codigo, titulo FROM Filme WHERE ano >
2000
LISTA CODIGO E TITULO DOS REGISTROS DA TABELA FILME QUE POSSUEM ANO MAIOR QUE 2000
SELECT
SELECT * FROM Filme WHERE titulo = ‘A Lagoa
Azul’ ORDER BY ano
LISTA TODOS OS CAMPOS DOS REGISTROS DA TABELA FILME QUE POSSUEM TITULO A LAGOA AZUL, TRÁS ELES ORDENADOS
PELO ANO
SELECT * FROM Filme WHERE titulo LIKE
‘%Lagoa%’
LISTA TODOS OS CAMPOS DOS REGISTROS DA TABELA FILME QUE POSSUEM A PALAVRA LAGOA NO TITULO
*usar o LIKE quando se deseja buscar em uma parte do campo, se usar o = o valor do campo tem
que ser exatamente igual o valor utilizado na busca
SELECT
SELECT COUNT(*) FROM tabela WHERE
condição
* condição é opcional, se não for utilizada retornará quantos registros tem na tabela, se for
utilizada retornará quantos registros tem na tabela que atendem à condição
Ex: SELECT COUNT(*) FROM Filme
LISTA QUANTOS REGISTROS TEM NA TABELA FILME
SELECT COUNT(*) FROM Filme WHERE ano >
2000
LISTA QUANTOS REGISTROS TEM NA TABELA FILME QUE POSSUEM ANO MAIOR QUE 2000
UPDATE
Atualiza (altera) os dados (registros) da tabela
UPDATE tabela SET campo1 = valor1, campo2 =
valor2 WHERE condição
* condição funciona da mesma forma que no SELECT, também é opcional, mas cuidado: se não
for colocada o UPDATE atua sobre todos os registros da tabela
Ex: UPDATE Filme SET titulo = ‘The Blue Lagoon’,
ano = 1980 WHERE codigo = ‘R001’
ATUALIZA TABELA FILME, MUDANDO O TITULO PARA THE BLUE LAGOON E ANO PARA 1980 NO REGISTRO QUE
POSSUI CODIGO R001
DELETE
Remove dados (registros) das tabelas
DELETE FROM tabela WHERE condição
* condição funciona da mesma forma que no SELECT, também é opcional, mas cuidado: se não
for colocada o DELETE atua sobre todos os registros da tabela (remove todos os registros)
Ex: DELETE FROM Filme WHERE codigo = ‘R001’
REMOVE O REGISTRO QUE POSSUI CODIGO R001 DA TABELA FILME
DELETE FROM Filme
REMOVE TODOS OS REGISTROS DA TABELA FILME
CREATE TABLE
Cria tabelas no banco de dados
CREATE TABLE tabela (campo1 tipodocampo1,
campo2 tipodocampo2, Constraint tabela_PK
Primary Key(campochaveprimaria))
Ex: CREATE TABLE Filme (codigo varchar(10), titulo
varchar (50), ano integer, Constraint Filme_PK
Primary Key(codigo))
CRIA A TABELA FILME COM OS CAMPOS CODIGO DO TIPO VARCHAR(10), TITULO DO TIPO VARCHAR(50) E ANO DO TIPO
INTEGER COM O CAMPO CODIGO COMO CHAVE PRIMÁRIA
ALTER TABLE
Altera tabelas do banco de dados, ADD COLUMN adiciona
campo novo, ALTER COLUMN altera tipo de dado do
campo e DROP COLUMN remove campo
ALTER TABLE tabela ADD COLUMN campo tipodocampo
ALTER TABLE tabela ALTER COLUMN campo tipodocampo
ALTER TABLE tabela DROP COLUMN campo
Ex: ALTER TABLE Filme ADD COLUMN distribuidora
varchar(30)
ALTERA A TABELA FILME ADICIONANDO O CAMPO DISTRIBUIDORA DO TIPO TEXTO(30)
DROP TABLE
Remove tabelas do banco de dados
DROP TABLE tabela
Ex: DROP TABLE Filme
REMOVE A TABELA FILME
Instruções Firebird
•
•
•
•
•
•
Iniciar serviço
Banco local
Usuário SYSDBA
Senha masterkey
Versão 2.1
Conectar no banco
Download

Banco de dados - caversan.eng.br