Projeto Cursos Livres - PL/SQL
PROJETO DE PL/SQL - CURSOS LIVRES
-- Configurando a data p padrao brasileiro
ALTER SESSION SET NLS_DATE_FORMAT = 'DD/MM/YYYY HH24:MI:SS';
SELECT current_timestamp, sessiontimezone FROM dual;
--Tabela Pessoa Fisica
DROP TABLE pessoa CASCADE CONSTRAINTS;
CREATE TABLE pessoa ( cod_pessoa INTEGER PRIMARY KEY, nome_pessoa VARCHAR2 (50) NOT NULL, nacionalidade VARCHAR2 (30) NOT NULL, dt_nascto DATE NOT NULL, sexo_pessoa CHAR(1) NOT NULL CHECK (sexo_pessoa in ('M','F'))
);
--Verificar suas tabelas
SELECT table_name FROM user_tables;
--Ver a estrutura de uma tabela
DESCRIBE pessoa;
DESC pessoa;
--TABELA ARBITRO
DROP TABLE arbitro CASCADE CONSTRAINTS;
CREATE TABLE arbitro ( cod_arb INTEGER PRIMARY KEY, numero_fifa NUMBER (12) NOT NULL, federacao_origem VARCHAR2 (30) NOT NULL,
FOREIGN KEY (Cod_arb) REFERENCES pessoa (cod_pessoa) on DELETE CASCADE); -- Ação Referencial
DESC arbitro;
--TABELA JOGADOR
DROP TABLE jogador CASCADE CONSTRAINTS;
CREATE TABLE jogador( num_jog INTEGER PRIMARY KEY, altura_jog NUMBER (3,2) NOT NULL, posicao_original CHAR(20) NOT NULL, equipe_origem VARCHAR2(30) NOT NULL);
ALTER TABLE jogador ADD FOREIGN KEY (num_jog) REFERENCES pessoa ON DELETE CASCADE;
DESC jogador;
--TABELA COMISSAO TECNICA
DROP TABLE comissao_tecnica CASCADE CONSTRAINTS;
CREATE TABLE comissao_tecnica( cod_ct INTEGER PRIMARY KEY REFERENCES pessoa ON DELETE CASCADE, --Primaria e estrangeira funcao_ct CHAR (20) NOT NULL);
DESC comissao_tecnica;
--Tabela Grupo
DROP TABLE grupo CASCADE CONSTRAINTS;
CREATE TABLE grupo ( cod_grupo CHAR(1), nome_grupo CHAR(10) NOT NULL,
PRIMARY KEY (cod_grupo));
DESC grupo;
--Tabela Fase
DROP TABLE fase CASCADE CONSTRAINTS;
CREATE TABLE fase ( cod_fase CHAR(4) PRIMARY KEY, nome_fase CHAR (14) NOT NULL);
DESC fase;
--Tabela Equipe
DROP TABLE equipe CASCADE CONSTRAINTS;
CREATE TABLE equipe ( cod_equipe CHAR(3) PRIMARY KEY, nome_equipe CHAR(20) NOT