A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

Banco de dados.

Apresentações semelhantes


Apresentação em tema: "Banco de dados."— Transcrição da apresentação:

1 Banco de dados

2 Revisão Vimos na aula passada como criar diagramas e modelos utilizando a ferramenta BrModelo. Cliente deposita Conta Data Código Saldo (1,1) Valor CPF Nome

3 SQL SQL é a linguagem padrão para se lidar com bancos de dados relacionais, e é aceita por quase todos os produtos existentes no mercado.

4 SQL - Domínio char(n): Cadeia de caracteres de tamanho fixo.
varchar(n): Cadeia de caracteres de tamanho variável com comprimento máximo especificado. int: Inteiro smallint: Inteiro pequeno (ocupa metade do espaço do int). numeric(p, d): Número de ponto fixo, com definição da precisão e número de casas decimais.

5 SQL - Domínio Real: Números de ponto flutuante.
float(n): Número de ponto flutuante com precisão de no mínimo n dígitos. Date: Datas, contendo ano, mês e dia. Time: Hora do dia, em horas, minutos e segundos.

6 SQL – Criar BD Comando utilizado para criar um determinado banco de dados no SGBD: Sintaxe: create database nome_do_db; Exemplo: create database teste; Criem um banco de dados com seu nome!

7 SQL – Remover o BD Comando utilizado para remover determinado BD existente no SGBD: Sintaxe: drop database nome_do_banco; Remova o BD com seu nome! Liste os bancos existentes!

8 SQL – Remover o BD Crie novamente o banco de dados com seu nome!
Liste os bancos existentes!

9 SQL – Utilizar BD Como em determinado SGBD podem existir diversos bancos, de diferentes características, com diferentes relações, etc. É necessário selecionar o banco de dados que se deseja trabalhar, ou seja, é necessário se “conectar” ao banco desejado.

10 SQL – Utilizar BD Comando utilizado para se “conectar” a um determinado banco de dados existente no SGBD: Sintaxe: use nome_do_db; Exemplo: use teste; Se conecte ao banco criado com seu nome!

11 SQL – Listar as tabelas do BD
Comando utilizado para listar as tabelas existentes em um determinado banco de dados do SGBD: Sintaxe quando está conectado a um BD: show tables; Sintaxe quando não está conectado a um BD: show tables from nome_do_BD;

12 SQL – Criação de tabela Uma relação é definida usando comando CREATE TABLE. Sintaxe: CREATE TABLE <relação> (<atributo> <domínio><regra do atributo>,..., <atributo> <domínio><regra do atributo>, <regras da tabela>); CREATE TABLE CLIENTE ( nome varchar(255), rg int, uf char(2), nascimento date, tefefone char(8), sex varchar(255) ); Crie esta tabela no banco de dados com seu nome!

13 SQL – Descrição de tabela
Sintaxe: describe nome_tabela; Exemplo: describe cliente;

14 SQL – Alteração de tabela
Sintaxe: ALTER TABLE <relação> ADD <atributo> <definição>; ALTER TABLE <relação> CHANGE <atributo_antigo> <novo_atributo> <definição> ALTER TABLE <relação> DROP <atributo>; Exemplo: ALTER TABLE cliente ADD codigo int FIRST; ALTER TABLE cliente ADD cpf int; ALTER TABLE cliente DROP rg; ALTER TABLE cliente DROP uf; ALTER TABLE cliente CHANGE sex sexo char(1); Realize as modificações abaixo e veja como a tabela ficou!

15 SQL – Remoção de tabela Uma relação é apagada através do comando DROP TABLE Sintaxe: DROP TABLE <relação>; Exemplo: DROP TABLE CLIENTE;

16 SQL – Regras para criação de tabelas
Podemos colocar restrições de integridade nas relações criadas: Assegurar que alterações feitas no banco de dados não resultem em perda da consistência dos dados. Utilizaremos as seguintes regras de integridade: Restrição de nulo; Restrição de integridade de entidade; Restrições de chave; Restrição de integridade referencial.

17 SQL - Regras Restrição de nulo Exemplo:
Pode ser especificado se valor nulo pode ou não ser permitido. No SQL, devemos colocar NOT NULL após o tipo do atributo. Exemplo: CREATE TABLE CLIENTE ( codigo int NOT NULL, .... );

18 SQL - Regras Restrição de integridade de entidade Restrições de chave
Nenhum valor de chave primária pode ser nulo. Restrições de chave Por definição, todos os elementos de um conjunto são distintos; Conseqüentemente, todas as tuplas em uma relação devem também serem distintas; Isto significa que não deve existir duas tuplas com a mesma combinação de valores para todos os atributos.

19 SQL - Regras Quando definimos uma chave primária já garantimos que só haverá tuplas distintas na relação: Logo garantimos a restrição de chave ao definirmos uma chave primária. No SQL, definimos chave primária da seguinte forma: codigo int NOT NULL PRIMARY KEY É definido desta forma apenas na criação da tabela!

20 SQL - Regras CREATE TABLE CLIENTE ( codigo int NOT NULL PRIMARY KEY, nome varchar(255), cpf int, nascimento date, tefefone char(8), sexo char(1) );

21 SQL - Regras Para chave primária normalmente utilizamos um parâmetro de auto incremento. CREATE TABLE alunos ( id_alu INT NOT NULL AUTO_INCREMENT, nome_alu VARCHAR( 100 ) NOT NULL, idade_alu INT NOT NULL, data_alu DATE NOT NULL, sexo CHAR(1) NOT NULL, PRIMARY KEY ( id_alu ) )

22 SQL - Regras Para colocar um atributo como chave primária de uma tabela já existente utiliza-se o comando Alter table. Sintaxe: ALTER TABLE tabela ADD PRIMARY KEY(atributo); Insira uma chave primária na tabela cliente

23 SQL - Regras Para remover a chave primária de uma relação utiliza-se o comando Alter table. Sintaxe: ALTER TABLE tabela DROP PRIMARY KEY; Remova a chave primária na tabela cliente Insira novamente a chave primária na tabela cliente

24 SQL - Regras Chave candidata UNIQUE
cpf int NOT NULL UNIQUE ou UNIQUE (cpf) Os atributos podem ser nulos. É definido desta forma apenas na criação da tabela!

25 SQL - Regras CREATE TABLE CLIENTE (
codigo int NOT NULL PRIMARY KEY, nome varchar(255), cpf int NOT NULL UNIQUE, nascimento date, tefefone char(8), sexo char(1) );

26 SQL - Regras CREATE TABLE CLIENTE (
codigo int NOT NULL PRIMARY KEY, nome varchar(255), cpf int NOT NULL, nascimento date, tefefone char(8), sexo char(1), UNIQUE (cpf) );

27 SQL - Exemplo CREATE TABLE CLIENTE ( codigo int NOT NULL PRIMARY KEY, nome varchar(30) NOT NULL, cpf int UNIQUE, nascimento date default ’ ’, tefefone char(8) default null, sexo char(1) );

28 SQL - Regras Restrição de integridade referencial:
é especificada entre duas relações e é usada para manter a consistência entre tuplas das duas relações; Informalmente, a restrição de integridade referencial diz que uma tupla da relação (R1), que refere-se a outra relação (R2), deve referir-se a uma tupla existente em R2 (chave estrangeira).

29 SQL - Regras Restrição de integridade referencial Sintaxe:
No SQL, definimos chave estrangeira da seguinte forma: Sintaxe: FOREIGN KEY (atributo) REFERENCES tabela(atributo) É definido desta forma apenas na criação da tabela!

30 SQL - Regras Crie esta relação! Visualize a descrição desta relação!
CREATE TABLE COMPRA( codigo int NOT NULL PRIMARY KEY, cod_cliente int, data date, FOREIGN KEY (cod_cliente) REFERENCES cliente(codigo) ); Crie esta relação! Visualize a descrição desta relação!

31 SQL - Regras ON DELETE RESTRICT: CASCADE: SET NULL: SET DEFAULT:
Exclusão de T1  falha se existem linhas em T2 combinando (padrão do SQL). CASCADE: Exclusão de T1  exclusão de todas as linhas de T2 que combinam. SET NULL: Exclusão de T1  colocar nulo nos atributos da chave estrangeira de cada tupla de T2 que combina. SET DEFAULT: Exclusão de T1  colocar valores default nos atributos da chave estrangeira de cada tupla de T2 que combina.

32 SQL - Regras ON UPDATE RESTRICT: CASCADE: SET NULL: SET DEFAULT:
Alteração de T1  falha se existem linhas em T2 combinando (padrão do SQL). CASCADE: Alteração de T1  linhas que combinam em T2 também serão atualizadas. SET NULL: Alteração de T1  colocar nulo nos atributos da chave estrangeira de cada tupla de T2 que combina. SET DEFAULT: Alteração de T1  colocar valores default nos atributos da chave estrangeira de cada tupla de T2 que combina.

33 SQL - Regras Remover a tabela compra! Criar a tabela pedido!
CREATE TABLE PEDIDO( cod_pedido int NOT NULL PRIMARY KEY, cod_cliente int, FOREIGN KEY (cod_cliente) REFERENCES cliente (codigo) ON DELETE SET NULL ON UPDATE CASCADE );

34 SQL - Regras Para alterar as restrições impostas a uma tabela devemos fazer o seguinte comando: Sintaxe: ALTER TABLE <tabela> ADD (<regra>); Exemplo: ALTER TABLE cliente ADD PRIMARY KEY(cpf);

35 SQL - Regras Caso já sido definido o mesmo tipo de restrições que queremos inserir na tabela, então devemos remover primeiro essas restrições Sintaxe: ALTER TABLE <tabela> DROP <regra>; Exemplo: ALTER TABLE cliente DROP PRIMARY KEY;

36 SQL - Regras Para alterar as restrições impostas a uma coluna devemos fazer o seguinte comando: Sintaxe: Alter table <tabela> MODIFY <nome_da_coluna> <tipo> <regra> Exemplo: ALTER TABLE cliente MODIFY cpf int NOT NULL UNIQUE;


Carregar ppt "Banco de dados."

Apresentações semelhantes


Anúncios Google