segunda-feira, 25 de maio de 2015

Drop Table

Comando drop no SQL:

Pesquisando sobre o comando Drop encontrei essa página com explicação legível, ao clicar na imagem se é remetido para a página original.

http://www.oraclehome.com.br/2013/08/14/diferencas-entre-truncate-table-drop-table-ou-delete-from/

segunda-feira, 18 de maio de 2015

Alguns cuidados na criação de tabelas!

Quando a chave primária é composta não dá para colocar ao lado de cada campo na criação de tabelas, coloca-se ao final, senão dá erro no Oracle.


No Sequence pode haver Gaps - buracos - quando não se usa a clásula nocache (elimina buracos, mas não é o mais otimizável)!

inner join

Tem que usar o inner join quando tem consulta a mais de uma tabela. Consulta interna.

1ª coisa definir as tabelas envolvidas na consulta.
2ª verificar o que liga as tabelas. Se não tiver a ligação direta, encontrar uma terceira tabela para ligar.


Where in

Utiliza as linhas 1 e 2 da tabela departamento

* explicações retiradas do material da professora Tanisi Pereira de Carvalho, disciplina de Banco de Dados I (2015/1)- IFRS - Câmpus Porto Alegre - Curso Superior de Tecnologia em Sistemas para Internet

CASCADE Constraints

Drop table Depto;
CASCADE CONSTRAINTS; // elimina a tabela e a regra do dicionário de dados, mantendo os dados intactos da tabela funcionários.

segunda-feira, 11 de maio de 2015

Comandos para criar, eliminar, visualizar e alterar a tabela e o Objeto Sequence

SQL PLUS - Comando DDL -

Create Table

CREATE TABLE nome_da_tabela
(nome_da_coluna tipo [NULL|NOT NULL],
     restrições de integridade);

Exemplificando:
CREATE TABLE aluno
(idAluno number(4) PRIMARY KEY,
       nomeAluno varchar(40);

DROP TABLE

Drop table aluno  CASCADE CONSTRAINTS; // 

A cláusula Cascade Constraints elimina a tabela e a regra do dicionário de dados, mantendo os dados intactos da tabela relacionada (no caso de relacionamento com outra tabela que inviabilizaria a exclusão em função de violação da integridade referencial)

Comando Desc ou Describe


ALTER TABLE  -Utilizado para fazer alterações no objeto tabela.

[ADD definição da coluna,]
[MODIFY definição da coluna,]
[DROP COLUMN nome,]
[RENAME COLUMN nome TO novo_nome,]
[ADD definição de constraint,]
[MODIFY CONSTRAINT definição de constraint, ]
[DROP CONSTRAINT nome,]
[RENAME CONSTRAINT antigo TO novo, ]
[ENABLE|DISABLE constraint, ]
[RENAME TO novo nome];

INSERT

INSERT INTO <tabela> [<colunas>] VALUES (valores);
INSERT INTO FUNCIONARIO
   (idFuncionario, nomeFuncionario, salario, idDepartamento) values (1, 'Pedro',2000,2);

Foreign Key (chave-estrangeira)

*********************************************************************

Objeto Sequence

Toda vez que eu quiser gerar um número sequencial deve-se utilizar o objeto Sequence do Oracle.

Sequence
 create sequence S_func
 Start with 100 nocache;
insert into Depto
values (S_depto.nextval, 'Vendas');
Cláusula NOCACHE (para não deixar o Oracle fazer Cache de memória  no nextval) isso não é otimizável.

* explicações retiradas do material da professora Tanisi Pereira de Carvalho, disciplina de Banco de Dados I (2015/1)- IFRS - Câmpus Porto Alegre - Curso Superior de Tecnologia em Sistemas para Internet

segunda-feira, 4 de maio de 2015

Linguagem SQL

SQL (Structured Query Language):


Pode ser dividida em cinco conjuntos:

  1. Recuperação de dados: comando SELECT.
  2. Linguagem de manipulação de dados - DML: comandos para inserções (INSERT), atualizações (UPDATE) e exclusões (DELETE)
  3. Linguagem de definição de dados - DDL: comandos de criação e manutenção de objetos no banco, CREATE, ALTER, DROP, RENAME, TRUNCATE.
  4. Linguagem para controle de transações: COMMIT, ROLLBACK, SAVEPOINT.
  5. Linguagem para controle de acesso a dados: GRANT e REVOKE.

É case sensitive.
Para finalizar um comando utiliza-se ponto e vírgula (;) ou barra (/) numa linha em branco.

SQL PLUS - Tipos de dados

CHAR(tamanho): sequência de caracteres de tamanho fixo.
VARCHAR2 (tamanho): sequencia de caracteres de tamanho variável.
NUMBER (total, decimais)
DATE

* explicações retiradas do material da professora Tanisi Pereira de Carvalho, disciplina de Banco de Dados I (2015/1)- IFRS - Câmpus Porto Alegre - Curso Superior de Tecnologia em Sistemas para Internet

domingo, 3 de maio de 2015

SGBD

Conjunto de programas responsáveis pelo gerenciamento de um banco de dados. 

Conforme Silberschatz (1999)* (Um SGBD) "É constituído por um conjunto de dados associados a conjunto de programas para acesso a esses dados. Sistemas de BD são projetados para gerir grandes volumes de informações. O gerenciamento de informações implica a definição das estruturas de armazenamento das informações e a definição dos mecanismos para a manipulação das informações."

Sem m SGBD não havia compartilhamento de dados entre as aplicações. Ocasionando problemas como:
  • Redundância de dados.
  • Difícil manutenção (necessidade de fazer essa manutenção em mais de um lugar/dados inconsistentes).

Características de um SGBD:
  • Integração: diversas aplicações acessando uma base de dados.
  • Redução da redundância e da inconsistência.
  • Definição das regras de restrição de integridade.
  • Compartilhamento.
  • Alta disponibilidade.
  • Segurança.
  • Adoção de um modelo de dados.

Necessidades de um SGBD:
  • Melhor organização e gerência dos dados.
  • Controle centralizado.
  • Dados armazenados de forma independente dos programas, servindo a múltiplas aplicações

Arquitetura de um SGBD:
  • Sistema de recuperação de falhas: consistência do BD depois de falta de energia.
  • Sistema de controle de concorrência. Ex.: duas pessoas sacando na mesma conta
  • Utilitários
  • Sistema de gerência de registros
  • Sistema de resolução/otimização de consulta
  • Sistema de indexação
  • Sistema de gerenciamento de arquivos
  • Sistema de gerenciamento de disco


Referência: SILBERSCHATZ, Abraham. Sistema de Banco de Dados. São Paulo: Makron Books, 1999.


.

Banco de Dados

Coleção de dados inter-relacionados acessados e compartilhados por vários usuários.