Anda di halaman 1dari 33

UNIVERSIDADE FEDERAL DE SANTA MARIA - UFSM

COLGIO AGRCOLA DE FREDERICO WESTPHALEN


BANCO DE DADOS II

BANCO DE DADOS II
AULA 1 Linguagem SQL
Linguagem de definio de dados (DDL)

DISCIPLINA: Banco de Dados II


PROF.: ROMULO VANZIN

Banco de Dados II

Estudar as caractersticas das Linguagens de


consulta (SQL).

Capacitar o aluno a implementar solues


utilizando bancos de dados relacionais;

Proporcionar ao aluno familiarizao com as


diversas tecnologias existentes para banco de
dados, de forma a capacit-lo a selecionar uma
alternativa adequada situao.

Banco de Dados II Avaliao

Banco de Dados II
Bibliografia Bsica

ELMASRI, R.; NAVATHE, S. B. Sistemas de Banco de


Dados. 4. Ed. So Paulo: Pearson Education, 2005.

SILBERSCHATZ, A.; KORTH, H. F.; SUDARSHAN, S.


Sistema de Banco de Dados. 5. Ed. Rio de Janeiro:
Campus, 2006.

AULA 1

Linguagem SQL

OBJETIVOS

O objetivo desta aula da disciplina de Banco de Dados II,


apresentar os conceitos iniciais sobre Linguagem SQL.

Ser demonstrada uma viso geral sobre os conceitos


envolvendo a Linguagem SQL mais especificamente DDL.

Ao final da aula, espera-se que os alunos tenham


compreendido a teoria sobre Linguagem SQL.

TPICOS A SEREM ABORDADOS

Introduo
Banco de Dados Relacional
Introduo a Structure Query Linguage
(Linguagem de Consulta Estruturada)
Linguagem de Definio de Dados - DDL

INTRODUO

Os Bancos de Dados e os sistemas de Bancos de


Dados se tornaram componentes essenciais no
cotidiano da sociedade moderna.

No decorrer do dia, a maioria de ns se depara com


atividades que envolvem alguma interao com os BD.

Por exemplo, se formos ao banco para efetuarmos um


depsito ou retirar dinheiro, se fizermos reservas em um
hotel ou se fizermos uma consulta no sistema da
biblioteca de nossa universidade, muito provavelmente
essas atividades envolvero uma pessoa ou um
programa de computador que acessar um BD.

Banco de Dados Relacional

O Modelo Relacional foi introduzido por Ted Codd, da


IBM Research, em 1970(Codd 1970).

Caracterstica deste modelo foi a simplicidade (conceitos


de uma relao matemtica), tabela de valores.

A arquitetura de um banco de dados relacional pode ser


descrita de maneira informal ou formal. Na descrio
informal estamos preocupados com aspectos prticos
da utilizao e usamos os termos tabela, linha e coluna.

Na descrio formal estamos preocupados com a


semntica formal do modelo e usamos termos como
relao (tabela), tupla(linhas) e atributo(coluna).

Banco de Dados Relacional


TABELAS ou ENTIDADES

Todos os dados de um banco de dados relacional (BDR)


so armazenados em tabelas.
Uma tabela uma simples estrutura de linhas e colunas.
Em uma tabela, cada linha contm um mesmo conjunto
de colunas.
Em um banco de dados podem existir uma ou centenas
de tabelas.
As tabelas associam-se entre si atravs de regras de
relacionamentos, estas regras consistem em associar
um ou vrios atributo de uma tabela com um ou vrios
atributos de outra tabela.

Banco de Dados Relacional


REGISTROS OU TUPLAS

Cada linha formada por uma lista ordenada de


colunas representa um registro, ou tupla.
Os registros no precisam conter informaes
em todas as colunas, podendo assumir valores
nulos quando assim se fizer necessrio.

Banco de Dados Relacional


COLUNAS

As colunas de uma tabela so tambm


chamadas de atributos.
Ex.: O campo Nome, ou endereo de uma
tabela de um BD relacional.

Banco de Dados Relacional


CHAVES

As tabelas relacionam-se umas as outras atravs de chaves. Uma


chave um conjunto de um ou mais atributos que determinam a
unicidade de cada registro.

Chaves Primrias - (PK - Primary Key) a chave que identifica cada


registro dando-lhe unicidade. A chave primria nunca se repetir.

Chaves Estrangeiras - (FK - Foreign Key) a chave formada


atravs de um relacionamento com a chave primria de outra
tabela. Define um relacionamento entre as tabelas e pode ocorrer
repetidas vezes. Caso a chave primria seja composta na origem, a
chave estrangeira tambm o ser.

Banco de Dados Relacional


EXEMPLO

SQL - Structured Query Language

uma linguagem de pesquisa declarativa para banco de


dados relacional (base de dados relacional).

Muitas das caractersticas originais do SQL foram


inspiradas na lgebra relacional.

Embora o SQL tenha sido originalmente criado pela


IBM,
rapidamente
surgiram
vrios
"dialetos"
desenvolvidos por outros produtores. Essa expanso
levou necessidade de ser criado e adaptado um
padro para a linguagem. Esta tarefa foi realizada pela
American National Standards Institute (ANSI) em 1986 e
ISO em 1987.

SQL -

Structured Query Language

O SQL foi revisto em 1992 e a esta verso foi dado o nome


de SQL-92.

Foi revisto novamente em 1999 e 2003 para se tornar


SQL:1999 (SQL3) e SQL:2003, respectivamente.

O SQL:1999 usa expresses regulares de emparelhamento,


queries recursivas e gatilhos (triggers).

Tambm foi feita uma adio controversa de tipos noescalados e algumas caractersticas de orientao a objeto.
O SQL:2003 introduz caractersticas relacionadas ao XML,
sequncias padronizadas e colunas com valores de autogeneralizao (inclusive colunas-identidade).

SQL -

Structured Query Language

Dividida em partes:

DDL (Data Definition Language - Linguagem


de Definio de Dados)
Comandos para a definio (criao), a
modificao e a remoo de relaes.

DML - (Data Manipulation Language


Linguagem de manipulao de dados)
Comandos

para Insero, Remoo e Atualizao de


tuplas no Banco de Dados.

DDL Linguagem de Definio de Dados

Uma DDL permite ao utilizador definir tabelas


novas e elementos associados.

A maioria dos bancos de dados de SQL


comerciais tem extenses proprietrias no DDL.

Alguns comandos: Create, Drop e Alter

DDL Linguagem de Definio de Dados


Declaraes

Create

Create - utilizada para construir um novo banco de


dados, tabela, ndice ou consulta armazenada.

Uma declarao CREATE, em SQL, cria um objeto


dentro do Sistema de Gerenciamento de Banco de
Dados Relacional (SGBDR).

Os tipos de objetos que podem ser criados dependem


de qual SGBDR est sendo utilizado, porm a maioria
suporta a criao de tabelas, ndices, usurios e banco
de dados.

DDL Linguagem de Definio de Dados


Create

Database

Sintaxe:
create database <caminho...\banco.fdb>;

Criar um Banco de Dados Firebird();


Ex.:

create database C:\AULA1.FDB;

DDL Linguagem de Definio de Dados

CREATE DATABASE 'C:\AULA1.FDB'


USER 'SYSDBA' PASSWORD
'masterkey';

DDL Linguagem de Definio de Dados

CONNECT

O comando CONNECT realiza a conexo com


um arquivo fsico de banco de dados
criado com o comando CREATE DATABASE.

Ex.: CONNECT 'C:\AULA1.FDB' USER

'SYSDBA' PASSWORD 'masterkey';

DDL Linguagem de Definio de Dados

Create

Table

Talvez o comando mais comum da declarao


CREATE seja o comando CREATE TABLE.

A sintaxe tpica :
CREATE TABLE [nome da tabela] ([definies de
colunas]) [parmetros da tabela]

DDL Linguagem de Definio de Dados

Create Table

com este comando, que criamos as tabelas.


Exemplo:

CREATE TABLE ALUNO (


MATRICULA INTEGER,
NOME VARCHAR(40),
ENDERECO VARCHAR(60),
TELEFONE CHAR(8),
CIDADE VARCHAR(30));

COMMIT;

DDL Linguagem de Definio de Dados


Create

Table

create table o nome do comando;


Aluno o nome da tabela;
e entre parnteses iro os atributos da tabela;
Os atributos so uma lista separada por ,;
Cada atributo composto obrigatoriamente de
nome e tipo;

DDL Linguagem de Definio de Dados


Show

Table

O comando SHOW TABLE mostra a estrutura


(campos, tipo de dados, etc) de uma tabela.

Ex.:
SHOW TABLE ALUNO;

DDL Linguagem de Definio de Dados


Show

Tables

O comando SHOW TABLES responsvel por


mostrar um listagem com as tabelas de um
banco de dados.

Ex.: SHOW TABLES;

DDL Linguagem de Definio de Dados


Alter

Table

O comando Alter Table pode alterar a estrutura de uma


tabela.

Vamos alterar a tabela Aluno adicionando uma coluna:

ALTER TABLE ALUNO ADD CPF VARCHAR(14);


COMMIT;

DDL Linguagem de Definio de Dados


Alter

Table

Modificar o tipo ou tamanho do campo:

ALTER TABLE ALUNO ALTER CPF TYPE


CHAR(14);

Excluir um campo:

ALTER TABLE ALUNO DROP CPF;

DDL Linguagem de Definio de Dados


Drop

Table

Excluir uma tabela:

DROP TABLE ALUNO;

EXERCCIO
Defina os comandos SQL para:
1 - Criar uma nova base de dados chamada locadora;
2 Criar as seguintes tabelas na base de dados:
cliente
filmes
cod_cliente varchar(20)
cod_filme integer
nome varchar(90)
cod_categoria integer
endereco varchar(120)
descricao varchar(90)
cidade varchar(50)
valor numeric

locacao
cod_cliente varchar(20)
cod_filme integer
data_locacao date

categorias
cod_categoria integer
descricao varchar(80)

EXERCCIO
Defina os comandos SQL para:
3 Alterar o campo cod_cliente das tabelas
para o tipo integer
4 Adicionar na tabela locacao um campo
para a data de devolucao do filme
5 Excluir o campo cidade da tabela cliente
6 Excluir a tabela categorias

DVIDAS

romulovanzin@yahoo.com.br

Anda mungkin juga menyukai