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

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

Definições de Esquemas, Restrições básicas e buscas

Apresentações semelhantes


Apresentação em tema: "Definições de Esquemas, Restrições básicas e buscas"— Transcrição da apresentação:

1 Definições de Esquemas, Restrições básicas e buscas
SQL-99 Definições de Esquemas, Restrições básicas e buscas

2 Introdução Originalmente projetada na IBM research, SQL (Structured Query Language) é uma linguagem de definição, busca e atualização de bancos de dados relacionais. Portanto, é um DDL e uma DML simultaneamente. Além disso, possui comandos para a criação de visões, restrições de integridade e controle de transações. Também possui regras para embutir código SQL em linguagens de propósito geral, tais como java e C/C++. Padronizada pela ANSI e ISO, é talvez a maior razão para o sucesso do SGBDs relacionais comerciais. Diferente da álgebra relacional, onde a ordem das operações devem ser cuidadosamente especificadas, com SQL declaramos o que queremos e o SGBD se encarrega de definir a ordem das operações. SQL tem algumas características da álgebra relacional, mas está mais fortemente baseada no cálculo relacional de tupla, porém com uma sintax mais amigável.

3 SQL: definição de dados e tipos de dados
SQL usa os termos table para se referir a uma relação, row para se referir a uma tupla e column para se referir a um atributo. CREATE é O principal comando SQL para a definição de dados. Com ele podemos criar esquemas, relações, visões e etc.

4 Conceitos de Esquemas em SQL
Em SQL, um esquema agrupa tabelas e outras construções que pertencem a uma determinada aplicação de banco de dados. O esquema SQL é identificado por um nome, inclui um identificador de autorização, bem como descritores para cada elemento no esquema. Elementos do esquema incluem tabelas, restrições, visões, domínios, entre outros. Para criar um esquema usamos o comando CREATE SCHEMA o qual pode incluir também um identificador para autorização. Exemplo: CREATE SCHEMA COMPANY AUTHORIZATION LINDER

5 Conceito de catálogo em SQL
Um catálogo é uma coleção de esquemas em SQL. Um catálogo sempre contém um esquema especial chamado INFORMATION_SCHEMA que possui informações sobre todos os esquemas no catálogo. É possível definir restrições envolvendo relações de esquemas diferentes dentro do mesmo catálogo.

6 CREATE TABLE COMPANY.EMPLOYEE...
Comando CREATE TABLE O comando CREATE TABLE é usado para criar uma nova relação, dando a ela um nome especificando seus atributos e restrições inciais. Os atributos são especificados primeiro, recebendo um nome, um tipo e, possivelmente, uma restrição. Por exemplo, uma possível restrição é NOT NULL. Restrições como a criação de chave e chave estrangeira podem ser feitas com o camando CREATE TABLE ou depois com o comando ALTER TABLE (veremos esse comando mais adiante). Tipicamente, o esquema dentro do qual estamos criando as tabelas está implicitamente definido pelo ambiente, porém se necessário podemos associar o nome do esquema; por exemplo: CREATE TABLE COMPANY.EMPLOYEE...

7 Tipos de dados para atributos
Os tipos básicos para atributos são incluem os numéricos, strings de caracter, strings de bits, booleano, data e tempo. Numeric: números inteiros e em ponto flutuante com várias precisões. Números formatados podem ser definidos usando DECIMAL(i,j), DEC(i,j) ou NUMERIC(i,j), onde i define o número de dígitos antes do ponto e j define o número de dígitos depois do ponto.

8 Tipos de dados para atributos (cont...)
As strings de caracteres podem ter comprimento fixados – CHAR(n) ou CHARACTER(n), onde n é número de caracteres. Podem ser de tamanho variado – VARCHAR(n) ou CHAR VARYING(n) ou CHARACTER VARYING(n), onde n denota o número máximo de caracteres. Uma string literal é especificada entre apóstrofes e é sensível a maiúsculas e minúsculas Você concatenar strings com o operador || de SQL. Exemplo: ´abc´||´cd´ retornará ´abccd´

9 Tipos de dados para atributos (cont...)
O tipo bit-string refere-se a uma string de bits. Podem ser de comprimento fixo – BIT(n), onde n é o número de bits. Podem ser de comprimento variável – BIT VARYING(n), onde n é o número máximo da de bits. Um literal deve ser colocado entre apóstrofes e precedido pela letra B. Por exemplo: B´ ´

10 Tipos de dados para atributos (cont...)
DATE é usado para armazenar uma data. Possui dez dígitos no formato YYYY-MM-DD, ou seja, ano, mês e dia. O tipo de dado TIME possui 8 posições com as componentes hora, minuto e segundo, no formato HH:MM:SS. Operador condicional < pode ser usado para comparar horas e datas. Literais são expressos entre apóstrofes precedidos pela palavra DATE ou TIME, no case de uma data ou uma hora, respectivamente. Exemplo: DATE ´ ´ ou TIME ´09:12:47´ O tipo de dados TIME WITH TIME ZONE inclui seis posições adicionais para especificar o desvio do standard universal time zone. O range é de +13:00 a -12:59.

11 Tipos de dados para atributos (cont...)
TIMESTAMP: Este tipo inclui tanto os atributos de data quanto o de tempo. INTERVAL: Especifica um intervalo relativo que pode ser usado para incremento e decremento de um valor absoluto de data ou tempo.

12 Criando restrições básicas sobre atributos em SQL
NOT NULL: especifica que um atributo não pode receber o valor NULL. DEFAULT <value>: especifica um valor defaut para um atributo. CHECK: Verifica uma condição sobre os valores admitidos para um atributo. PRIMARY KEY: Especifica que o atributo (ou atributos) são chaves primárias.

13 Criando restrições básicas sobre atributos em SQL
FOREYING KEY: usada para definir a chave estrangeira de uma relação. Como sabemos, essa restrição pode ser violada quando deletamos ou atualizamos tuplas em uma relação referenciada. Assim, por defaut SQL rejeitará a operação que viola a restrição. Como possibilidade, o projetista pode especificar ações alternativas que incluem: SET NULL, CASCADE e DEFAUT. Deve se especificado se a ação é tomada sob deleção ou atualização.

14 Criando uma base de dados com CREATE TABLE

15 Criando uma base de dados com CREATE TABLE (cont...)

16 Criando uma base de dados com CREATE TABLE (cont...)

17 Criando uma base de dados com CREATE TABLE (cont...)

18 Exemplos de Restrições em Chaves Estrangeiras

19 Exemplos de Restrições em Chaves Estrangeiras


Carregar ppt "Definições de Esquemas, Restrições básicas e buscas"

Apresentações semelhantes


Anúncios Google