Skip to content

Instantly share code, notes, and snippets.

@lzfelix
Last active August 29, 2015 14:07
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save lzfelix/4e6540097e36f3b859aa to your computer and use it in GitHub Desktop.
Save lzfelix/4e6540097e36f3b859aa to your computer and use it in GitHub Desktop.
CREATE TABLE DEPARTAMENTO (
DNUMERO INTEGER NOT NULL,
DNOME VARCHAR(20) NULL,
GERDATAINICIO DATE NULL,
GERSSN INTEGER NULL
);
ALTER TABLE DEPARTAMENTO
ADD ( PRIMARY KEY (DNUMERO) ) ;
CREATE TABLE DEPENDENTE (
NOME_DEPENDENTE VARCHAR(20) NOT NULL,
SEXO VARCHAR(20) NULL,
DATANASC DATE NULL,
PARENTESCO VARCHAR(20) NULL,
ESSN INTEGER NOT NULL
);
ALTER TABLE DEPENDENTE
ADD ( PRIMARY KEY (NOME_DEPENDENTE, ESSN) ) ;
CREATE TABLE DEPT_LOCALIDADES (
DLOCALIZACAO VARCHAR(20) NULL,
DNUMERO INTEGER NOT NULL
);
ALTER TABLE DEPT_LOCALIDADES
ADD ( PRIMARY KEY (DNUMERO, DLOCALIZACAO) ) ;
CREATE TABLE EMPREGADO (
SSN INT(9) NOT NULL,
SUPERSSN INTEGER NULL,
PNOME VARCHAR(20) NULL,
MINICIAL VARCHAR(20) NULL,
UNOME VARCHAR(20) NULL,
DATANASC DATE NULL,
ENDERECO VARCHAR(50) NULL,
SEXO VARCHAR(20) NULL,
SALARIO INTEGER NULL,
DNO INTEGER NULL
);
ALTER TABLE EMPREGADO
ADD ( PRIMARY KEY (SSN) ) ;
CREATE TABLE PROJETO (
PNUMERO INTEGER NOT NULL,
PJNOME VARCHAR(20) NULL,
PLOCALIZACAO VARCHAR(20) NULL,
DNUM INTEGER NULL
);
ALTER TABLE PROJETO
ADD ( PRIMARY KEY (PNUMERO) ) ;
CREATE TABLE TRABALHA_EM (
PNUMERO INTEGER NOT NULL,
HORAS INTEGER NULL,
ESSN INTEGER NOT NULL
);
ALTER TABLE TRABALHA_EM
ADD ( PRIMARY KEY (PNUMERO, ESSN) ) ;
ALTER TABLE DEPARTAMENTO
ADD ( FOREIGN KEY (GERSSN)
REFERENCES EMPREGADO
ON DELETE SET NULL ) ;
ALTER TABLE DEPENDENTE
ADD ( FOREIGN KEY (SSN)
REFERENCES EMPREGADO ) ;
ALTER TABLE DEPT_LOCALIDADES
ADD ( FOREIGN KEY (DNUMERO)
REFERENCES DEPARTAMENTO ) ;
ALTER TABLE EMPREGADO
ADD ( FOREIGN KEY (SUPERSSN)
REFERENCES EMPREGADO
ON DELETE SET NULL ) ;
ALTER TABLE EMPREGADO
ADD ( FOREIGN KEY (DNO)
REFERENCES DEPARTAMENTO
ON DELETE SET NULL ) ;
ALTER TABLE PROJETO
ADD ( FOREIGN KEY (DNUM)
REFERENCES DEPARTAMENTO
ON DELETE SET NULL ) ;
ALTER TABLE TRABALHA_EM
ADD ( FOREIGN KEY (PNUMERO)
REFERENCES PROJETO ) ;
ALTER TABLE TRABALHA_EM
ADD ( FOREIGN KEY (SSN)
REFERENCES EMPREGADO ) ;
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment