Fundamentos de SQL - Parte 6 de 8

1,284 views
1,214 views

Published on

Hoje aprenderemos a incluir restrições nas tabelas

Published in: Education
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
1,284
On SlideShare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
122
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Fundamentos de SQL - Parte 6 de 8

  1. 1. Fundamentos de SQL Microsoft SQL Server 2005 Emiliano Eloi <emilianoeloi@gmail.com>
  2. 2. Objetivos <ul><li>Ser capaz se fazer intervenções em bancos de dados que utilizem esta linguagem. </li></ul><ul><ul><li>Definições das bases de dados. </li></ul></ul><ul><ul><li>Manipulação dos dados. </li></ul></ul><ul><ul><li>Recuperação dos dados. </li></ul></ul><ul><li>Compreender diagramas de entidade-relacionamento. </li></ul><ul><li>Pensar em SQL. </li></ul>
  3. 3. Para hoje <ul><li>Nas aulas passadas vimos: DDL, Normalização e tabela temporária. </li></ul><ul><li>Hoje veremos restrições. </li></ul>
  4. 4. Lista de Verificação <ul><li>Micro computado ligado. </li></ul><ul><li>Teclado e mouse. </li></ul><ul><li>Autenticação no Windows. </li></ul><ul><li>Internet Explorer funcionando. </li></ul><ul><li>Microsoft SQL Server Management Studio. </li></ul>
  5. 5. DER – Bolsa de Valores
  6. 6. DER – Call Center Centrall
  7. 7. DER – Call Center
  8. 8. Chave primária (PK) Chaves primárias, referem-se ao conjunto de um ou mais campos, cujos valores, considerando a combinação de valores de todos os campos do conjunto, nunca se repetem e que podem ser usadas como um índice para os demais campos da tabela do banco de dados. Em chaves primárias, não pode haver valores nulos nem repetição desse conjunto. Quando a chave primária é simples, ou seja, é formada por um único campo da tabela, esse campo não pode ter dois ou mais registros de mesmo valor, e também não pode conter nenhum registro nulo. Se a chave primária é composta, ou seja, formada por mais de um campo, os valores de cada campo podem se repetir, mas não a combinação desses valores. Exemplo: a tabela 'TBL_LIVROS_AUTORES' tem como chave primária (ID_LIVRO, ID_AUTOR).
  9. 9. Chave primária - Usando /* Configurando coluna como chave primária */ ALTER TABLE TBL_PROPRIETARIOS ADD CONSTRAINT CON_PK_PROPRIETARIO PRIMARY KEY ( ID_PROPRIETARIO )
  10. 10. Integridade referencial Entre as principais características de um Sistema Gerenciador de Banco de Dados (SGDB) está integridade, que consiste em impedir que um determinado código ou chave de uma tabela não tenha correspondência em outra tabela. Por exemplo, um código de uma determinada disciplina na tabela ‘Histórico Escolar’ sem a sua descrição na tabela ‘Disciplina’.
  11. 11. Restrições – Chave Estrangeira ALTER TABLE TBL_CLIENTES ADD CONSTRAINT CON_FK_PESSOA FOREIGN KEY ( ID_PESSOA) REFERENCES TBL_PESSOAS ( PK_PESSOA )
  12. 12. Exercício <ul><li>Configure as chaves primária e estrangeiras de sua base de dados. </li></ul><ul><li>Tabelas: TBL_PESSOAS, TBL_CLIENTES, TBL_ATENDENTES e TBL_ATENDIMENTOS </li></ul>
  13. 13. DER – Bolsa de valores
  14. 14. RESTRIÇÕES – DEFAULT Esta constraint serve para indicar um valor padrão para um campo, quando o mesmo não for especificado. Exemplo: se a tabela TESTE possui dois campos, COD e NOME, e para o campo NOME existe uma constraint DEFAULT criada, ao inserirmos dados nesta tabela podemos somente fornecer o conteúdo do campo COD, pois o conteúdo do campo NOME será automaticamente preenchido com o valor definido na constraint DEFAULT. Esta constraint deve ser utilizada para manter integridade de domínio. Também podemos utilizar esta constraint como um objeto independente, assim como as rules. Não podemos criar constraints em campos com o tipo de dados rowversion e campos que possuem uma propriedade IDENTITY definida.
  15. 15. RESTRIÇÕES – DEFAULT ALTER TABLE TBL_COMPRAS_ACOES ADD CONSTRAINT CON_DEF_DATA_NEGOCIACAO DEFAULT GETDATE () FOR DT_DATA_NEGOCIACAO
  16. 16. RESTRIÇÕES – UNIQUE Esta constraint faz a validação de valores únicos em uma coluna de uma tabela. Se um campo estiver definido com a constraint UNIQUE nenhum valor repetido poderá ser fornecido para esta campo. Diferente da PRIMARY KEY, podemos colocar várias constraints UNIQUE por tabela mas para cada campo que possue uma constraint UNIQUE somente podemos inserir o valor NULL uma vez. Esta constraint deve ser utilizada para manter integridade de entidade. Quando esta constraint é criada na tabela, um índice também é automaticamente criado sobre a coluna sobre a qual a constraint está definida. Este índice não pode ser apagado diretamente, devemos apagar a constraint UNIQUE primeiro.
  17. 17. RESTRIÇÕES – UNIQUE ALTER TABLE TBL_INVESTIDORES ADD CONSTRAINT CON_UNI_CPF_INVESTIDOR UNIQUE ( NM_CPF )

×