-- Création de la base de données les tris et les comparaisons sont sensibles à la casse
-- et aux accents (COLLATE)
CREATE DATABASE IF NOT EXISTS db_famille CHARACTER SET utf8mb4 COLLATE utf8mb4_bin ;
USE db_famille ;

-- Table pour stocker les personnes avec les relations parents-enfants
CREATE TABLE t_personne (
    pk_personne INT PRIMARY KEY AUTO_INCREMENT,
    prenom VARCHAR(50),
    nom VARCHAR(50),
    date_de_naissance DATE,
    fk_mere INT,
    fk_pere INT,
    FOREIGN KEY (fk_mere) REFERENCES t_personne(pk_personne),
    FOREIGN KEY (fk_pere) REFERENCES t_personne(pk_personne)
) ENGINE=InnoDB ;



-- Insérer des données réalistes dans la table t_personne
INSERT INTO t_personne (pk_personne, prenom, nom, date_de_naissance, fk_mere, fk_pere) VALUES
    (1, 'Alice', 'Dupont', '1985-05-12', NULL, NULL),
    (2, 'Bob', 'Martin', '1980-08-25', NULL, NULL),
    (3, 'Claire', 'Leclerc', '1990-03-17', NULL, NULL),
    (4, 'David', 'Dubois', '1972-11-02', NULL, NULL),
    (5, 'Élise', 'Lefevre', '1988-06-30', NULL, NULL),
    (6, 'François', 'Laroche', '2000-09-14', NULL, NULL),
    (7, 'Gabrielle', 'Gagnon', '1995-12-18', 5, 4),
    (8, 'Hugo', 'Hamel', '1982-04-09', 5, 4),
    (9, 'Isabelle', 'Roy', '1978-07-23', 3, 2),
    (10, 'Jean', 'Dufresne', '1992-01-07', 1, 2),
    (11, 'Karine', 'Pelletier', '1987-10-05', 5, 4),
    (12, 'Luc', 'Lemieux', '1984-02-28', 1, 2),
    (13, 'Marie', 'Bertrand', '1998-06-03', 7, 12),
    (14, 'Nicolas', 'Lavoie', '1975-09-20', 3, 2),
    (15, 'Olivia', 'Girard', '1983-12-11', NULL, NULL),
    (16, 'Pierre', 'Caron', '1993-04-14', 3, 2),
    (17, 'Rachel', 'Deschamps', '1989-07-08', 1, 2),
    (18, 'Sébastien', 'Boucher', '1970-01-31', 7, 6),
    (19, 'Sophie', 'Tremblay', '1986-08-22', 1, 2),
    (20, 'Thomas', 'Lafontaine', '2005-11-27', 7, 6),
    (21, 'Valérie', 'Lapierre', '2002-02-15', 7, 6),
    (22, 'William', 'Robert', '2008-07-04', 9, 8),
    (23, 'Xavier', 'Gagné', '2010-10-19', 9, 8),
    (24, 'Yasmine', 'Pelletier', '2003-03-25', 11, NULL),
    (25, 'Zacharie', 'Lemieux', '2012-06-08', 11, 16),
    (26, 'Ariane', 'Fortin', '2015-09-12', NULL, 14),
    (27, 'Benoît', 'Simard', '2019-12-01', 21, 14),
    (28, 'Catherine', 'Roy', '2017-04-09', 21, 14),
    (29, 'Daniel', 'Morin', '2014-11-26', 28, 23),
    (30, 'Émilie', 'Bergeron', '2016-08-03', 17, NULL),
    (31, 'Félix', 'Laporte', '2018-01-20', 17, 16),
    (32, 'Geneviève', 'Gagnon', '2020-06-07', 19, 18),
    (33, 'Hubert', 'Côté', '2013-09-14', 19, 18),
    (34, 'Isaac', 'Beauchamp', '2011-12-27', 19, NULL),
    (35, 'Julie', 'Vachon', '2014-05-03', 21, 20),
    (36, 'Karl', 'Martel', '2016-08-18', 24, 23),
    (37, 'Léa', 'Bélanger', '2018-11-02', 24, 23),
    (38, 'Mathieu', 'Lévesque', '2022-02-09', 24, 25),
    (39, 'Nathalie', 'Dion', '2019-05-16', 30, 22),
    (40, 'Olivier', 'Bertrand', '2020-08-22', 26, 27),
    (41, 'Pascale', 'Laroche', '2021-11-06', 26, 27),
    (42, 'Quentin', 'Gauthier', '2017-01-15', 26, 27),
    (43, 'Rosalie', 'Bouchard', '2015-04-30', 28, 29),
    (44, 'Simon', 'Charbonneau', '2013-07-17', 30, 22),
    (45, 'Tanya', 'Gélinas', '2011-10-02', NULL, 31),
    (46, 'Ulysse', 'Martineau', '2009-01-18', 32, 33),
    (47, 'Véronique', 'Laforest', '2007-04-05', 32, 33),
    (48, 'Willy', 'Bédard', '2010-08-10', 41, 42),
    (49, 'Ximena', 'Rivard', '2012-11-24', 43, 44),
    (50, 'Yanick', 'Couture', '2014-04-07', NULL, 48);
