• Nenhum resultado encontrado

Banco de Dados. DIEGO BARCELOS RODRIGUES 2015 (2015/1) 1. Ifes - Campus Cachoeiro de Itapemirim

N/A
N/A
Protected

Academic year: 2021

Share "Banco de Dados. DIEGO BARCELOS RODRIGUES 2015 (2015/1) 1. Ifes - Campus Cachoeiro de Itapemirim"

Copied!
21
0
0

Texto

(1)

Banco de Dados

DIEGO BARCELOS RODRIGUES

dbarcelos@ifes.edu.br

2015 (2015/1) 1

(2)

Agenda

● Breve revisão dos Conceitos Básicos

● SQL (Linguagem de Consulta Estruturada)

 Subdivisões da Linguagem

 DDL (Linguagem de Definição de Dados)

o CREATE

o DROP

o ALTER

(3)

Vimos que...

• Banco de Dados (Database)

– consiste em uma estrutura computacional compartilhada e integrada que

armazena dados (em um conjunto de arquivos), sejam eles do usuário ou

metadados.

– pode ser classificado como: • monousuário

• multiusuário

– grupo de trabalho – empresarial

• operacional, transacional ou de produção • homologação

• data warehouse (armazém de dados) • centralizado

(4)

• O Sistema de Gerenciamento de Banco de Dados (SGBD)

– é um conjunto de programas que gerenciam Bancos de Dados e controlam o

acesso aos dados armazenados

– age como um intermediário entre o usuário e o Banco de Dados; – é o único modo de acesso aos dados de uma Database;

– transforma o lógico para o físico e o físico para o lógico;

– gerencia a segurança, a integridade dos dados e rotinas de backup e restauração.

• Por consequência, o SGBD fornece vantagens como:

– aprimoramento do compartilhamento, segurança e integração dos dados; – minimização de inconsistências;

– aumento de produtividade do usuário final.

(5)

• São basicamente 4 os tipos de usuários de bancos de

dados:

– DBA

• Administra SGBD’s e Bancos de Dados

– Aplicação Externa

• acessa os dados utilizados em operações diárias da empresa.

– Usuário ad hoc

• acessa diretamente o SGBD para realização consultas ou transações sem estar vinculado a uma aplicação que acessa o BD.

– Programador

• desenvolve aplicações utilizando um ambiente de desenvolvimento que integra LP’s e SQL, produzindo geradores de relatório e formulários.

(6)

• São basicamente 3 (três) tipos de visões das

estruturas computacionais de armazenamento

que consituem o banco de dados:

– Metadados

– Dados do Usuário (BD)

– Backup e Log de Transações

• Mas que todos os usuários tem a visão de

uma única estrutura devido ao SGBD ser o

único meio de acesso aos dados.

Vimos que...

(7)

SQL

● SQL – Structured Query Language ou Linguagem de

Consulta Estruturada

● Consiste no método de acesso básico ao Banco de

Dados através do SGBDR.

● Subdivisões:

o DDL – Linguagem de Definição de Dados

o DML – Linguagem de Manipulação de Dados

o DCL – Linguagem de Controle de Dados

o DTL – Linguagem de Transação de Dados (Begin Tran,

Commit e Rollback)

(8)

SQL – DDL

● Constituída por comandos SQL responsáveis pela

definição (criação, alteração ou remoção) de

databases, tabelas, restrições, etc.

● São apenas três comando:

o CREATE – para a criação de um objeto no banco

o DROP – para remoção de um objeto no banco

o ALTER – para alteração de um objeto no banco

● Podem ser aplicados aos mais variados objetos de

um banco de dados: tabelas, views, índices,

(9)

SQL – DDL

● Exemplos:

o CREATE TABLE o ALTER TABLE o DROP TABLE o CREATE INDEX o ALTER INDEX o DROP INDEX o CREATE VIEW o ALTER VIEW o DROP VIEW o CREATE SCHEMA o ALTER SCHEMA o DROP SCHEMA

(10)

SQL – DDL

CREATE TABLE

● Sinopse básica:

CREATE TABLE nome_tabela (

nome_coluna_1 tipo_coluna_1 [ [NOT] NULL ] [ DEFAULT <valor> ] . . . /* Os três pontos representam mais definições de colunas */

[, nome_coluna_n tipo_coluna_n [ [NOT] NULL] ]

[, CONSTRAINT PrefixoRestricao_NomeRestricao

Tipo_Restricao ( lista_de_colunas | condicao )

[ REFERENCES NomeTabela_Referenciada ( lista_de_colunas ) ]

]

. . . /* Os três pontos representam mais definições de restrições */

(11)

SQL – DDL

CREATE TABLE

● Sinopse básica:

Onde ‘n’ é um número natural e:

- PrefixoRestricao pode ser:

PK – para restrições PRIMARY KEY FKn – para restrições FOREIGN KEY UN – para restrições UNIQUE

CK – para restrições CHECK

- Nome_Restricao será uma abreviação ou o nome da própria tabela quando se tratar de restrições PRIMARY KEY, FOREIGN KEY e UNIQUE. Quando for uma restrição CHECK o Nome_Restricao deve retratar a condição. Exemplo: CONSTRAINT CK_Emp_Salario_Positivo CHECK (Salario > 0)

(12)

SQL – DDL

CREATE TABLE

● Sinopse básica:

CREATE TABLE nome_tabela (

nome_coluna_1 tipo_coluna_1 [[NOT] NULL] [, nome_coluna_n tipo_coluna_n [[NOT] NULL] ]

[, CONSTRAINT PK_nome_tabela PRIMARY KEY (lista_de_colunas)] [, CONSTRAINT UN_nome_restricao UNIQUE (lista_de_colunas)] [, CONSTRAINT FK_nome_restricao FOREIGN KEY (lista_de_colunas) references nome_tabela_refenciada(lista_de_colunas)]

[, CONSTRAINT FK_nome_restricao FOREIGN KEY (lista_de_colunas) references nome_tabela_refenciada(lista_de_colunas)]

[, CONSTRAINT CK_nome_restricao CHECK (condição_01)] [, CONSTRAINT CK_nome_restricao CHECK (condição_n)] );

(13)

SQL – DDL

CREATE TABLE

● Exemplo

O código abaixo cria uma tabela vazia chamada

‘departamento’:

CREATE TABLE departamento (

Cd_Dpto

INTEGER

NOT NULL,

Nm_Dpto

VARCHAR(40)

NOT NULL,

Ger_Dpto

CHAR(7),

DtInicioGer DATE ,

Local_Dpto CHAR(500)

NOT NULL,

CONSTRAINT PK_Empregado

PRIMARY KEY (Cd_Dpto)

);

(14)

SQL – DDL

CREATE TABLE

● Código para criação da tabela empregado:

CREATE TABLE empregado (

Matr_Emp CHAR(7) NOT NULL, Nm_Emp VARCHAR(40) NOT NULL, Cpf_Emp CHAR(11) NOT NULL, Dpto_Emp INTEGER,

Sal_Emp NUMERIC(12,2) NOT NULL,

DtAd_Emp DATE, /* Data de Admissao do Empregado */ CONSTRAINT PK_Empregado

PRIMARY KEY (matricula), CONSTRAINT UN_Empregado UNIQUE (Cpf), CONSTRAINT CK01_salario CHECK (salario > 0) );

(15)

SQL – DDL

ALTER TABLE

● Sinopse básica:

ADD {COLUMN def_col | CONSTRAINT def_restr}

DROP {COLUMN | CONSTRAINT}

TYPE novo_tipo_da_coluna

ALTER TABLE nm_tab ALTER COLUMN nm_col DROP {NOT NULL | DEFAULT}

SET {NOT NULL | DEFAULT valor_default}

TO novo_nome_da_tabela

RENAME

COLUMN nm_col TO novo_nome_da_coluna

Onde:

def_col: nome_coluna tipo_coluna [ [[NOT] NULL] | DEFAULT valor_default]

(16)

SQL – DDL

ALTER TABLE

● Exemplos:

ALTER TABLE empregado ADD COLUMN End_Emp VARCHAR(500) NOT NULL

ALTER TABLE empregado DROP COLUMN End_Emp

ALTER TABLE empregado ADD CONSTRAINT FK01_Empregado

FOREIGN KEY (Cd_Dpto) REFERENCES Departamento(Cd_Dpto)

ALTER TABLE empregado ALTER COLUMN Dpto_Emp TYPE SMALLINT

ALTER TABLE empregado ALTER COLUMN End_Emp DROP NOT NULL

ALTER TABLE empregado ALTER COLUMN Dpto_Emp SET NOT NULL

ALTER TABLE empregado ALTER COLUMN DtAdmissao_Emp SET DEFAULT now()

ALTER TABLE empregado RENAME TO Employee

(17)

• Exemplos:

– DROP TABLE

ALUNO

– DROP TABLE

PROFESSOR

– DROP TABLE

DISCIPLINA

SQL – DDL

(18)

SQL – DML

INSERT INTO

● Sinopse básica:

INSERT INTO

nome_tabela (lista_de_colunas)

VALUES

(respectivos_valores_das_colunas)

Exemplo:

INSERT INTO empregado (Matr_Emp,Nm_Emp, Cpf_Emp, Dpto_Emp, Sl_Emp, DtAd_Emp)

VALUES (‘2003509’, ‘Jose Dias’, ‘12312312312’, 9, 1789.00, ‘2011-01-09’)

(19)

SQL – DML

DELETE

● Sinopse básica:

DELETE FROM

nome_tabela

WHERE

<condicao>

Exemplo:

DELETE FROM

empregado

WHERE

Dpto_Emp =

9

O comando DELETE acima apaga todas as linhas da tabela ‘empregado’

que estiverem com o valor 9 na coluna ‘Dpto_Emp’.

(20)

SQL – DML

UPDATE

● Sinopse básica:

UPDATE

nome_tabela

SET

nome_coluna = novo_valor

[

WHERE

<condição>]

Exemplo:

UPDATE

nome_tabela

SET

Dpto_Emp =

1

WHERE

Dpto_Emp =

9

O comando acima atualiza (altera ou modifica) para 1 o valor da coluna

Dpto_Emp de todas as linhas que estiverem com valor 9 nesta mesma

coluna. Se removermos a cláusula WHERE todos os valores na coluna

Dpto_Emp serão atualizados para 1.

(21)

EXERCÍCIO

Referências

Documentos relacionados

Atrav´es das Figuras 4.21(a) e 4.21(b), observamos que ocorre uma queda na densidade de predadores quando consideramos a taxia quase local no cen´ario 3, em compara¸c˜ao com o caso

Para a institucionalização de um projeto de extensão, o proponente (servidor) deverá ter o projeto registrado na Diretoria de Extensão da PROEX – Pró-Reitoria

Consultar também o documento Instrumento de Avaliação Externa para as Equipes de Atenção Básica e Saúde Bucal (Saúde da Família ou parametrizada) disponível no PMAQ / 3º Ciclo

Luciana Bertocco de Paiva Haddad Pesquisador executante: Tatiana Morgado Conte Departamento/Instituto: Departamento de Gastroenterologia do Hospital das Clínicas/ Faculdade de

A ITAÚSA e suas controladas avaliam na data de cada período do relatório a necessidade de reconhecimento de perdas por impairment, para todos os ativos financeiros mensurados ao

Para assegurar a efetividade do direito fundamental ao meio ambiente ecologicamente equilibrado, como bem de uso comum do povo e essencial à sadia qualidade de vida, a Constituição

5.2 Controle de Arfagem e Guinada em um Modelo Did´ atico de Helic´ optero 2 DOF 106. A an´ alise das Figuras 33 e 34 mostra que para o dist´ urbio aplicado h´ a uma

Em BOTTA; VENTURINI, 2005 e LEONEL, 2009 é realizado acoplamento MEC/MEF de enrijecedor com elemento finito com aproximação de deslocamentos por polinômios de terceiro grau e força