SGDB - Definio
Um Sistema de Gerncia de Banco de Dados (SGDB) uma coleo de programas que possibilita que os usurios criem e mantenham um banco de dados.
SGDB
O SGDB portanto um sistema de software de finalidade genrica que facilita o processo de definio, construo e manipulao de banco de dados para vrias aplicaes:
Definir um banco de dados envolve especificar os tipos de dados, as estruturas e as restries para os dados que sero armazenados. Construir o banco de dados o processo de armazenar os referidos dados em algum meio de armazenamento que seja controlado pelo SGDB. Manipular o banco de dados inclui funes de fazer consultas, atualizar e gerar relatrios.
Usurios de um SGDB
Administradores de banco de dados Projetistas de banco de dados Usurios finais Usurios finais casuais Usurios finais leigos ou paramtricos Usurios finais sofisticados Usurios finais individuais Analistas de sistemas e engenheiros de software
SQL
Sigla de Structured Query Language Padro ANSI e ISO Serve para: Definio de dados Recuperao de dados Manipulao de dados Controle de acesso Integridade de dados
SQL - CRUD Create - Incluso de dados Retrieve - Recuperar dados Update - Atualizar dados Delete - Excluir dados
DML - Insert
Clusula Insert - Incluir linhas (Create do CRUD)
insert into <tabela> [ (<campo1, campo2,...>) ] values (<valor1, valor2,...>), (<valor1, valor2,...>0
Exerccios
Crie uma nova tabela para armazenar cursos, deve conter: cdigo, descrio, data inicial, data final, professor, preo e nmero de vagas, online. Inserir 20 cursos diferentes. Excluir os cursos que j terminaram; Aumentar preos em 20% Reduzir em 5 o nmero de vagas para os cursos online Inserir 5 novos cursos Entregar os comandos SQL executados.
exemplos:
select codigo, descricao from cursos; select * from cursos;
Exerccio
Testar funes de data e hora
http://pgdocptbr.sourceforge.net/pg80/functions-datetime.html http://pt.wikibooks.org/wiki/PostgreSQL_Pr%C3%A1tico/Fun%C3%A7%C3% B5es_Internas/Data_e_Hora
SQL - Joins
Especificando a juno:
SQL - Join
INNER JOIN
SELECT * FROM cliente A INNER JOIN agencia B ON A.codigo_agencia = B.codigo_agencia
SQL - Join
LEFT JOIN
SELECT * FROM cliente A LEFT JOIN agencia B ON A.codigo_agencia = B.codigo_agencia
SQL - Join
RIGHT JOIN
SELECT * FROM cliente A RIGHT JOIN agencia B ON A.codigo_agencia = B.codigo_agencia
SQL - Join
OUTER JOIN
SELECT * FROM cliente A FULL OUTER JOIN agencia B ON A.codigo_agencia = B.codigo_agencia
SQL - Join
LEFT EXCLUDING JOIN
SELECT * FROM cliente A LEFT JOIN agencia B ON A.codigo_agencia = B.codigo_agencia WHERE B.codigo_agencia IS NULL
SQL - Join
RIGHT EXCLUDING JOIN
SELECT * FROM cliente A RIGHT JOIN agencia B ON A.codigo_agencia = B.codigo_agencia WHERE A.codigo_agencia IS NULL
SQL - Join
OUTER EXCLUDING JOIN
SELECT * FROM cliente A FULL OUTER JOIN agencia B ON A.codigo_agencia = B.codigo_agencia WHERE A.codigo_agencia IS NULL or B.codigo_agencia IS NULL
SQL Joins
http://www.codeproject.com/Articles/33052/Visual-Representation-of-SQL-Joins