Rev 1074 | Go to most recent revision | Blame | Last modification | View Log | RSS feed
SET @OLD_UNIQUE_CHECKS=@@UNIQUE_CHECKS, UNIQUE_CHECKS=0;
SET @OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS, FOREIGN_KEY_CHECKS=0;
SET @OLD_SQL_MODE=@@SQL_MODE, SQL_MODE='TRADITIONAL';
DROP SCHEMA IF EXISTS `tb_cel` ;
CREATE SCHEMA IF NOT EXISTS `tb_cel` DEFAULT CHARACTER SET utf8 COLLATE utf8_unicode_ci ;
USE `tb_cel` ;
-- -----------------------------------------------------
-- Table `tb_cel`.`cel_utilisateurs`
-- -----------------------------------------------------
DROP TABLE IF EXISTS `tb_cel`.`cel_utilisateurs` ;
CREATE TABLE IF NOT EXISTS `tb_cel`.`cel_utilisateurs` (
`id_utilisateur` INT NOT NULL ,
`prenom` VARCHAR(255) NULL ,
`nom` VARCHAR(255) CHARACTER SET 'utf8' COLLATE 'utf8_unicode_ci' NULL ,
`courriel` VARCHAR(255) NOT NULL ,
`mot_de_passe` VARCHAR(255) NULL ,
`licence_acceptee` TINYINT(1) NULL DEFAULT 0 COMMENT 'Acceptation de la licence utilisateur pour le cel\n' ,
`preferences_utilisateur` LONGTEXT NULL COMMENT 'Préférences utilisateur sérialisées sous une forme à définir\n' ,
`admin` TINYINT(1) NULL DEFAULT 0 ,
PRIMARY KEY (`id_utilisateur`) )
ENGINE = MyISAM
DEFAULT CHARACTER SET = utf8
COLLATE = utf8_unicode_ci;
-- -----------------------------------------------------
-- Table `tb_cel`.`cel_obs_images`
-- -----------------------------------------------------
DROP TABLE IF EXISTS `tb_cel`.`cel_obs_images` ;
CREATE TABLE IF NOT EXISTS `tb_cel`.`cel_obs_images` (
`ce_image` BIGINT(20) NOT NULL ,
`ce_utilisateur` VARCHAR(32) NOT NULL ,
`ce_observation` BIGINT(20) NOT NULL ,
`date_liaison` DATETIME NULL ,
PRIMARY KEY (`ce_image`, `ce_utilisateur`, `ce_observation`) ,
INDEX `fk_cel_obs_images_cel_utilisateurs1` (`ce_utilisateur` ASC) ,
CONSTRAINT `fk_cel_obs_images_cel_utilisateurs1`
FOREIGN KEY (`ce_utilisateur` )
REFERENCES `tb_cel`.`cel_utilisateurs` (`id_utilisateur` )
ON DELETE NO ACTION
ON UPDATE NO ACTION)
ENGINE = MyISAM
DEFAULT CHARACTER SET = utf8
COLLATE = utf8_unicode_ci;
-- -----------------------------------------------------
-- Table `tb_cel`.`cel_mots_cles_images`
-- -----------------------------------------------------
DROP TABLE IF EXISTS `tb_cel`.`cel_mots_cles_images` ;
CREATE TABLE IF NOT EXISTS `tb_cel`.`cel_mots_cles_images` (
`id_mot_cle_utilisateur` VARCHAR(128) CHARACTER SET 'utf8' COLLATE 'utf8_unicode_ci' NOT NULL COMMENT 'Identifiant du mot-clé pour une position donnée dans l\'arbre d\'utilisateur.\nLe même mot-clé peut être placé à plusieurs endroits de l\'arbre et aura donc deux id distincts.' ,
`ce_utilisateur` VARCHAR(32) NOT NULL ,
`mot_cle` VARCHAR(50) NOT NULL COMMENT 'Mot clé de l\'utilisateur pour une position dans l\'arbre.' ,
`md5` VARCHAR(32) NOT NULL COMMENT 'MD5 du mot clé en minuscule.' ,
`bg` BIGINT NOT NULL COMMENT 'Bordure gauche.' ,
`bd` BIGINT NOT NULL COMMENT 'bordure droite.' ,
`niveau` INT(11) NOT NULL COMMENT 'Niveau du mot clé dans l\'arbre.' ,
`ce_mot_cle_utilisateur_parent` VARCHAR(128) NOT NULL ,
INDEX `fk_cel_mots_cles_images_cel_utilisateur1` (`ce_utilisateur` ASC) ,
PRIMARY KEY (`id_mot_cle_utilisateur`) ,
INDEX `fk_cel_mots_cles_images_cel_mots_cles_images1` (`ce_mot_cle_utilisateur_parent` ASC) ,
CONSTRAINT `fk_cel_mots_cles_images_cel_utilisateur1`
FOREIGN KEY (`ce_utilisateur` )
REFERENCES `tb_cel`.`cel_utilisateurs` (`id_utilisateur` )
ON DELETE NO ACTION
ON UPDATE NO ACTION,
CONSTRAINT `fk_cel_mots_cles_images_cel_mots_cles_images1`
FOREIGN KEY (`ce_mot_cle_utilisateur_parent` )
REFERENCES `tb_cel`.`cel_mots_cles_images` (`id_mot_cle_utilisateur` )
ON DELETE NO ACTION
ON UPDATE NO ACTION)
ENGINE = InnoDB
DEFAULT CHARACTER SET = utf8
COLLATE = utf8_unicode_ci
COMMENT = 'Table des mots clés, à utiliser avec des transactions !\n'
ROW_FORMAT = COMPACT;
-- -----------------------------------------------------
-- Table `tb_cel`.`cel_images_mots_cles`
-- -----------------------------------------------------
DROP TABLE IF EXISTS `tb_cel`.`cel_images_mots_cles` ;
CREATE TABLE IF NOT EXISTS `tb_cel`.`cel_images_mots_cles` (
`id_image` INT NOT NULL ,
`id_mot_cle_utilisateur` VARCHAR(128) CHARACTER SET 'utf8' COLLATE 'utf8_unicode_ci' NOT NULL ,
PRIMARY KEY (`id_image`, `id_mot_cle_utilisateur`) ,
INDEX `fk_cel_images_mot_cles_cel_mots_cles_images1` (`id_mot_cle_utilisateur` ASC) ,
CONSTRAINT `fk_cel_images_mot_cles_cel_mots_cles_images1`
FOREIGN KEY (`id_mot_cle_utilisateur` )
REFERENCES `tb_cel`.`cel_mots_cles_images` (`id_mot_cle_utilisateur` )
ON DELETE NO ACTION
ON UPDATE NO ACTION)
ENGINE = MyISAM
DEFAULT CHARACTER SET = utf8
COLLATE = utf8_unicode_ci;
-- -----------------------------------------------------
-- Table `tb_cel`.`cel_images`
-- -----------------------------------------------------
DROP TABLE IF EXISTS `tb_cel`.`cel_images` ;
CREATE TABLE IF NOT EXISTS `tb_cel`.`cel_images` (
`id_image` BIGINT(20) NOT NULL AUTO_INCREMENT ,
`ordre` BIGINT(20) NOT NULL ,
`ce_utilisateur` VARCHAR(32) NOT NULL COMMENT 'L\'id utilisateur est un int mais on utilise un varchar pour stocker des observations avec des identifiants temporaires\n' ,
`prenom_utilisateur` VARCHAR(255) NULL ,
`nom_utilisateur` VARCHAR(255) NULL ,
`courriel_utilisateur` VARCHAR(255) NULL ,
`hauteur` INT(11) NOT NULL ,
`largeur` INT(11) NOT NULL ,
`appareil_fabriquant` VARCHAR(50) CHARACTER SET 'utf8' COLLATE 'utf8_unicode_ci' NULL DEFAULT NULL ,
`appareil_modele` VARCHAR(50) CHARACTER SET 'utf8' COLLATE 'utf8_unicode_ci' NULL DEFAULT NULL ,
`date_prise_de_vue` DATETIME NULL DEFAULT NULL ,
`note_qualite` TINYINT(5) NOT NULL DEFAULT '-1' ,
`mots_cles_texte` LONGTEXT NULL COMMENT 'Champ calculé contenant la liste des mots clés utilisateurs séparé par des virgules.\n' ,
`commentaire` LONGTEXT CHARACTER SET 'utf8' COLLATE 'utf8_unicode_ci' NULL DEFAULT NULL ,
`nom_original` VARCHAR(255) CHARACTER SET 'utf8' COLLATE 'utf8_unicode_ci' NULL DEFAULT NULL ,
`md5` VARCHAR(32) CHARACTER SET 'utf8' COLLATE 'utf8_unicode_ci' NULL DEFAULT NULL ,
`meta_exif` LONGTEXT CHARACTER SET 'utf8' COLLATE 'utf8_unicode_ci' NULL DEFAULT NULL ,
`meta_iptc` LONGTEXT CHARACTER SET 'utf8' COLLATE 'utf8_unicode_ci' NULL DEFAULT NULL ,
`meta_xmp` LONGTEXT NULL ,
`meta_makernote` LONGTEXT NULL ,
`date_modification` DATETIME NULL ,
`date_creation` DATETIME NOT NULL COMMENT 'Date d\'ajout de l\'image au CEL.' ,
`publiable_eflore` TINYINT NULL ,
PRIMARY KEY (`id_image`) ,
INDEX `ci_id_image` (`id_image` ASC, `ordre` ASC, `ce_utilisateur` ASC) ,
INDEX `fk_cel_images_cel_utilisateur1` (`ce_utilisateur` ASC) ,
CONSTRAINT `fk_cel_images_cel_obs_images1`
FOREIGN KEY (`id_image` )
REFERENCES `tb_cel`.`cel_obs_images` (`ce_image` )
ON DELETE NO ACTION
ON UPDATE NO ACTION,
CONSTRAINT `fk_cel_images_cel_utilisateur1`
FOREIGN KEY (`ce_utilisateur` )
REFERENCES `tb_cel`.`cel_utilisateurs` (`id_utilisateur` )
ON DELETE NO ACTION
ON UPDATE NO ACTION,
CONSTRAINT `fk_cel_images_cel_images_mot_cles1`
FOREIGN KEY (`id_image` )
REFERENCES `tb_cel`.`cel_images_mots_cles` (`id_image` )
ON DELETE NO ACTION
ON UPDATE NO ACTION)
ENGINE = MyISAM
AUTO_INCREMENT = 265
DEFAULT CHARACTER SET = utf8
COLLATE = utf8_unicode_ci;
-- -----------------------------------------------------
-- Table `tb_cel`.`cel_mots_cles_obs`
-- -----------------------------------------------------
DROP TABLE IF EXISTS `tb_cel`.`cel_mots_cles_obs` ;
CREATE TABLE IF NOT EXISTS `tb_cel`.`cel_mots_cles_obs` (
`id_mot_cle_utilisateur` VARCHAR(128) CHARACTER SET 'utf8' COLLATE 'utf8_unicode_ci' NOT NULL ,
`ce_utilisateur` VARCHAR(32) NOT NULL ,
`mot_cle` VARCHAR(50) CHARACTER SET 'utf8' COLLATE 'utf8_unicode_ci' NOT NULL ,
`md5` VARCHAR(32) CHARACTER SET 'utf8' COLLATE 'utf8_unicode_ci' NOT NULL ,
`bg` BIGINT NOT NULL ,
`bd` BIGINT NOT NULL ,
`niveau` INT(11) NOT NULL ,
`ce_mot_cle_utilisateur_parent` VARCHAR(128) CHARACTER SET 'utf8' COLLATE 'utf8_unicode_ci' NOT NULL ,
INDEX `fk_cel_mots_cles_obs_cel_utilisateur1` (`ce_utilisateur` ASC) ,
PRIMARY KEY (`id_mot_cle_utilisateur`) ,
INDEX `fk_cel_mots_cles_obs_cel_mots_cles_obs1` (`ce_mot_cle_utilisateur_parent` ASC) ,
CONSTRAINT `fk_cel_mots_cles_obs_cel_utilisateur1`
FOREIGN KEY (`ce_utilisateur` )
REFERENCES `tb_cel`.`cel_utilisateurs` (`id_utilisateur` )
ON DELETE NO ACTION
ON UPDATE NO ACTION,
CONSTRAINT `fk_cel_mots_cles_obs_cel_mots_cles_obs1`
FOREIGN KEY (`ce_mot_cle_utilisateur_parent` )
REFERENCES `tb_cel`.`cel_mots_cles_obs` (`id_mot_cle_utilisateur` )
ON DELETE NO ACTION
ON UPDATE NO ACTION)
ENGINE = InnoDB
DEFAULT CHARACTER SET = utf8
COLLATE = utf8_unicode_ci,
COMMENT = 'Table des mots clés, à utiliser avec des transactions !'
ROW_FORMAT = COMPACT;
-- -----------------------------------------------------
-- Table `tb_cel`.`cel_obs_mots_cles`
-- -----------------------------------------------------
DROP TABLE IF EXISTS `tb_cel`.`cel_obs_mots_cles` ;
CREATE TABLE IF NOT EXISTS `tb_cel`.`cel_obs_mots_cles` (
`id_observation` INT NOT NULL ,
`id_mot_cle_utilisateur` VARCHAR(128) CHARACTER SET 'utf8' COLLATE 'utf8_unicode_ci' NOT NULL ,
PRIMARY KEY (`id_observation`, `id_mot_cle_utilisateur`) ,
INDEX `fk_cel_obs_mots_cles_cel_mots_cles_obs1` (`id_mot_cle_utilisateur` ASC) ,
CONSTRAINT `fk_cel_obs_mots_cles_cel_mots_cles_obs1`
FOREIGN KEY (`id_mot_cle_utilisateur` )
REFERENCES `tb_cel`.`cel_mots_cles_obs` (`id_mot_cle_utilisateur` )
ON DELETE NO ACTION
ON UPDATE NO ACTION)
ENGINE = MyISAM
DEFAULT CHARACTER SET = utf8
COLLATE = utf8_unicode_ci;
-- -----------------------------------------------------
-- Table `tb_cel`.`cel_zones_geo`
-- -----------------------------------------------------
DROP TABLE IF EXISTS `tb_cel`.`cel_zones_geo` ;
CREATE TABLE IF NOT EXISTS `tb_cel`.`cel_zones_geo` (
`id_zone_geo` VARCHAR(50) NOT NULL ,
`code` VARCHAR(10) NOT NULL ,
`nom` VARCHAR(255) NOT NULL ,
`utm_secteur` CHAR(3) NOT NULL ,
`utm_x` INT(11) NOT NULL DEFAULT '0' ,
`utm_y` INT(11) NOT NULL DEFAULT '0' ,
`wgs84_latitude` FLOAT NOT NULL ,
`wgs84_longitude` FLOAT NOT NULL ,
`date_modification` DATETIME NOT NULL ,
`ce_zone_geo_parente` VARCHAR(50) NULL ,
`bg` BIGINT NULL ,
`bd` BIGINT NULL ,
`niveau` INT NULL ,
PRIMARY KEY (`id_zone_geo`) ,
INDEX `MAJ` (`nom` ASC) )
ENGINE = MyISAM
DEFAULT CHARACTER SET = utf8;
-- -----------------------------------------------------
-- Table `tb_cel`.`cel_obs`
-- -----------------------------------------------------
DROP TABLE IF EXISTS `tb_cel`.`cel_obs` ;
CREATE TABLE IF NOT EXISTS `tb_cel`.`cel_obs` (
`id_observation` BIGINT(20) NOT NULL AUTO_INCREMENT ,
`ordre` BIGINT NOT NULL ,
`ce_utilisateur` VARCHAR(32) NOT NULL ,
`prenom_utilisateur` VARCHAR(255) NULL ,
`nom_utilisateur` VARCHAR(255) NULL ,
`courriel_utilisateur` VARCHAR(255) NULL ,
`nom_sel` VARCHAR(255) NULL ,
`nom_sel_nn` INT(11) NULL COMMENT 'Numéro du nom sélectionné.' ,
`nom_ret` VARCHAR(255) NULL ,
`nom_ret_nn` INT(11) NULL COMMENT 'Numéro du nom retenu.' ,
`nt` INT(11) NULL COMMENT 'Numéro taxonomique.' ,
`famille` VARCHAR(255) NULL ,
`nom_referentiel` VARCHAR(255) NULL ,
`ce_zone_geo` VARCHAR(50) NULL ,
`zone_geo` VARCHAR(255) NULL ,
`lieudit` VARCHAR(255) NULL ,
`station` VARCHAR(255) NULL ,
`milieu` VARCHAR(255) NULL ,
`latitude` FLOAT NULL ,
`longitude` FLOAT NULL ,
`geodatum` VARCHAR(25) NULL COMMENT 'Référentiel géographique utilisé.\nPar exmple : WGS84' ,
`date_observation` DATETIME NULL ,
`mots_cles_texte` LONGTEXT NULL COMMENT 'Champ calculé contenant la liste des mots clés utilisateurs séparé par des virgules.' ,
`commentaire` TEXT NULL ,
`transmission` TINYINT(1) NULL ,
`date_creation` DATETIME NULL ,
`date_modification` DATETIME NULL ,
`date_transmission` DATETIME NULL ,
PRIMARY KEY (`id_observation`) ,
INDEX `fk_cel_obs_cel_utilisateur1` (`ce_utilisateur` ASC) ,
INDEX `fk_cel_obs_cel_zones_geo1` (`ce_zone_geo` ASC) ,
CONSTRAINT `fk_cel_obs_cel_obs_mots_cles1`
FOREIGN KEY (`id_observation` )
REFERENCES `tb_cel`.`cel_obs_mots_cles` (`id_observation` )
ON DELETE NO ACTION
ON UPDATE NO ACTION,
CONSTRAINT `fk_cel_obs_cel_utilisateur1`
FOREIGN KEY (`ce_utilisateur` )
REFERENCES `tb_cel`.`cel_utilisateurs` (`id_utilisateur` )
ON DELETE NO ACTION
ON UPDATE NO ACTION,
CONSTRAINT `fk_cel_obs_cel_obs_images1`
FOREIGN KEY (`id_observation` )
REFERENCES `tb_cel`.`cel_obs_images` (`ce_observation` )
ON DELETE NO ACTION
ON UPDATE NO ACTION,
CONSTRAINT `fk_cel_obs_cel_zones_geo1`
FOREIGN KEY (`ce_zone_geo` )
REFERENCES `tb_cel`.`cel_zones_geo` (`id_zone_geo` )
ON DELETE NO ACTION
ON UPDATE NO ACTION)
ENGINE = MyISAM
DEFAULT CHARACTER SET = utf8
COLLATE = utf8_unicode_ci;
SET SQL_MODE=@OLD_SQL_MODE;
SET FOREIGN_KEY_CHECKS=@OLD_FOREIGN_KEY_CHECKS;
SET UNIQUE_CHECKS=@OLD_UNIQUE_CHECKS;