Escolar Documentos
Profissional Documentos
Cultura Documentos
linguagem comercial e completa de definio e manipulao de banco de dados SQL1: aprovado pelo grupo ANSI, em 1986 SQL2: aprovado em 1992 SQL3: est em andamento
Outras instrues
SQL embutida em linguagens de programao Definio de vises, autorizao de acesso, controle de transaes e concorrncia, restries de integridade, ...
JTS SQL bsico 1 JTS SQL bsico 2
SQL: DDL
Criao de banco de dados
O padro SQL no instrues para criao do BD. Alguns produtos tm:
CREATE DATABASE: cria uma base de dados vazia DROP DATABASE: elimina uma base de dados
DROP TABLE
Elimina uma tabela
ALTER TABLE
Altera a definio de uma tabela
CREATE INDEX
Permite a criao de ndices (em tabelas) na base de dados
JTS SQL bsico 3
SGBDs comerciais oferecem domnios adicionais aos do padro (CHAR, VARCHAR, INTEGER, REAL, ...) como: DATE BLOB (at 2 gigabytes) para conter imagens, sons, vdeos, ...
Clusula NOT NULL requerida para colunas que faam parte da chave primria colunas de uma tabela so ordenadas pela sua ordem de definio (linhas no tem ordenao)
JTS SQL bsico 5
CREATE TABLE PACIENTE ( CodPac CHAR(5) NOT NULL, Nome CHAR(40) NOT NULL, Cidade CHAR(25) PRIMARY KEY (Codigo) )
Chave primria
JTS SQL bsico 6
Clusula DELETE
No permite
Exemplo MODIFY
ALTER TABLE PACIENTE MODIFY (ENDERECO ALTER TABLE PACIENTE DROP PRYMARY KEY
JTS SQL bsico 11
VARCHAR(50))
INSERT
insere uma ou mais tuplas (linhas, registros) em uma tabela
DELETE
remove uma ou mais tuplas em uma tabela
UPDATE
modifica os dados de uma ou mais tuplas de uma tabela
JTS SQL bsico
JTS
SQL bsico
17
JTS
SQL bsico
18
JTS
SQL bsico
22
Ordem das clusulas: SELECT lista de colunas FROM lista de tabelas [WHERE condio sobre linhas] [GROUP BY lista de colunas p/agrupamento [HAVING condio sobre grupo] ] [ORDER BY lista de colunas]
25 JTS SQL bsico 26
JTS
SQL bsico
Viso em que aparecem os mdicos, seus pacientes e dados das suas consultas
CREATE VIEW Med_Cons_Pac (Nome_Med, Nome_Pac, Dia, Hora) AS SELECT m.Nome, p.Nome, Dia, Hora FROM MDICO m, PACIENTE p, CONSULTA c WHERE M.codmed = C.codmed AND P.codpac = C.codpac
29 JTS SQL bsico 30
Bibliografia
DATE, C.J. Introduo a Sistemas de Bancos de Dados: traduo (4 edio americana). Rio de Janeiro: Campus, 1994 GOLENDZINER, Lia Goldstein. Conceitos de Bancos de Dados. Porto Alegre: CPGCC/UFRGS, 1996 (notas de aula) HEUSER, Carlos A. Fundamentos de Banco de Dados. Porto Alegre: CPGCC/UFRGS, 2000 (notas de aula) KROENKE, DAVID M. Banco de Dados: Fundamentos, projeto e implementao. Sexta edio (traduo). LTC Livros Tcnicos e Cientficos, 1999 SILBERSCHATZ, Abraham.; KORTH, Henry F.; SUDARRSHAN, S. Sistemas de Banco de Dados. 3 ed. So Paulo: MAKRON BOOKS, 1999
31 JTS SQL bsico 32