DROP TABLE Equipe;
DROP TABLE Emplacement;
DROP TABLE Joueur;
DROP TABLE Pokemon;
DROP TABLE Apparition;

CREATE TABLE Equipe (
id NUMBER CONSTRAINT pk_equipe PRIMARY KEY,
nom VARCHAR(30),
couleur VARCHAR(30)
);

CREATE TABLE Joueur(
pseudonyme VARCHAR(20) CONSTRAINT pk_joueur PRIMARY KEY,
personnage VARCHAR(20), 
sexe VARCHAR(30),
niveau NUMBER(2) CHECK (niveau BETWEEN 0 AND 40),
idEquipe CONSTRAINT fk_joueur REFERENCES Equipe(id)
);

CREATE TABLE Pokemon (
id NUMBER CONSTRAINT pk_pokemon PRIMARY KEY ,
nom VARCHAR(30) ,
espece VARCHAR(30) ,
pointCombat NUMBER CHECK (pointCombat >= 0),
idJoueur CONSTRAINT fk_pokemon REFERENCES Joueur(pseudonyme)
);

CREATE TABLE Emplacement(
id NUMBER CONSTRAINT pk_emplacement PRIMARY KEY,
latitude NUMBER CHECK (latitude BETWEEN -90 AND 90) ,
longitude NUMBER CHECK (longitude BETWEEN -180 AND 180)
);


CREATE TABLE Apparition(
idPokemon CONSTRAINT fk_apparition1 REFERENCES Pokemon(id),
idEmplacement CONSTRAINT fk_apparition2 REFERENCES Emplacement(id),
horaire INTEGER ,
duree NUMBER
);