DROP TABLE IF EXISTS equipes;
DROP TABLE IF EXISTS joueurs;
DROP TABLE IF EXISTS matchs;
DROP TABLE IF EXISTS selections;
CREATE TABLE equipes (
id_equipe CHAR(3) PRIMARY KEY,
nom_equipe TEXT,
pays TEXT,
coach TEXT
);
CREATE TABLE joueurs (
id_joueur INTEGER PRIMARY KEY AUTOINCREMENT,
id_equipe CHAR(3),
nom TEXT,
prenom TEXT,
position TEXT,
nationalite TEXT,
naissance DATE,
taille FLOAT CHECK (1 < taille and taille < 3) DEFAULT 1.80,
poids FLOAT CHECK (50 < poids and poids < 150) DEFAULT 80,
FOREIGN KEY(id_equipe) REFERENCES equipes(id_equipe)
);
CREATE TABLE matchs (
id_match INTEGER PRIMARY KEY AUTOINCREMENT,
id_locaux CHAR(3),
id_visiteurs CHAR(3),
jour DATE,
horaire TIME,
locaux_score INTEGER,
visiteurs_score INTEGER,
stade TEXT,
spectateurs INTEGER,
FOREIGN KEY(id_locaux) REFERENCES equipes(id_equipe),
FOREIGN KEY(id_visiteurs) REFERENCES equipes(id_equipe)
);
CREATE TABLE selections (
id_joueur INTEGER NOT NULL,
id_match INTEGER NOT NULL,
essais SMALLINT DEFAULT 0,
transformations SMALLINT DEFAULT 0,
penalites SMALLINT DEFAULT 0,
PRIMARY KEY(id_joueur,id_match),
FOREIGN KEY(id_match) REFERENCES matchs(id_match),
FOREIGN KEY(id_joueur) REFERENCES joueurs(id_joueur)
);