BDI – SQL – DDL – Sintaxe básica

Tipos de dados vistos em Aula:

BIGINT – Inteiro longo de 8bytes com sinal, escolhido também em aula para as chaves primárias.

VARCHAR(N) – Tipo String, exemplo NOME VARCHAR(100) aceita uma string de 100 caracteres máximo.

CHAR(N) – Tipo String de tamanho fixo, ou seja, usa todo o tamanho,unidade federativa: UF CHAR(2), RS,TO,ES,PI,… usa os dois caracteres sempre.

NUMERIC(P,E) usado para dados numéricos com precisão. SALARIO NUMERIC(6,2), guarda um valor de 9999,99

INTEGER – Inteiro de 4 bytes com sinal SERIAL – inteiro de quatro bytes com auto-incremento, usado em chaves primárias.

Tipos de dados apartir da documentação oficial http://pgdocptbr.sourceforge.net/pg80/datatype.html

COMANDOS: PRIMARY KEY define a chave primária da tabela.

FOREING KEY(COLUNA) REFERENCES TABELA define a chave estrangeira, se houver, na tabela.

NOT NULL complemento de coluna para não aceitar nulos, ou valores em “branco” ou desconhecidos.

EXEMPLO COM RELACIONAMENTOS: exemplo entre PESSOA e CURSO. UM para MUITOS

 CREATE TABLE CURSO (
 IDCURSO BIGINT PRIMARY KEY,
 NOMECURSO VARCHAR(100) NOT NULL
);

CREATE TABLE PESSOA (
 IDPESSOA BIGINT NOT NULL PRIMARY KEY,
 NOMEPESSOA VARCHAR(100) NOT NULL,
 SALARIOPESSOA NUMERIC(8,2) NOT NULL,
 SEXOPESSOA CHAR(1) NOT NULL,
 IDCURSO BIGINT NOT NULL,
 FOREIGN KEY(IDCURSO) REFERENCES CURSO
);

Exemplo de MUITOS para MUITOS


CREATE TABLE CURSO (
  IDCURSO BIGINT PRIMARY KEY,
  NOMECURSO VARCHAR(100) NOT NULL
);

CREATE TABLE PESSOA (
  IDPESSOA BIGINT NOT NULL PRIMARY KEY,
  NOMEPESSOA VARCHAR(100) NOT NULL,
  SALARIOPESSOA NUMERIC(8,2) NOT NULL,
  SEXOPESSOA CHAR(1) NOT NULL
);

CREATE TABLE CURSOPESSOA (
  IDCURSO BIGINT NOT NULL,
  IDPESSOA BIGINT NOT NULL,
  FOREIGN KEY(IDCURSO) REFERENCES CURSO,
  FOREIGN KEY(IDPESSOA) REFERENCES PESSOA
);

Até mais.

Esse post foi publicado em BD I - Banco de Dados I e marcado , , . Guardar link permanente.

Deixe um comentário

Preencha os seus dados abaixo ou clique em um ícone para log in:

Logotipo do WordPress.com

Você está comentando utilizando sua conta WordPress.com. Sair /  Alterar )

Foto do Google

Você está comentando utilizando sua conta Google. Sair /  Alterar )

Imagem do Twitter

Você está comentando utilizando sua conta Twitter. Sair /  Alterar )

Foto do Facebook

Você está comentando utilizando sua conta Facebook. Sair /  Alterar )

Conectando a %s