Subversion Repositories eFlore/Applications.cel

Compare Revisions

Ignore whitespace Rev 1881 → Rev 1882

/branches/v1.7-croissant/doc/bdd/schema_bdd_cel_v2.mwb
Cannot display: file marked as a binary type.
svn:mime-type = application/octet-stream
/branches/v1.7-croissant/doc/bdd/cel_v2.sql
48,7 → 48,7
 
CREATE TABLE IF NOT EXISTS `cel_mots_cles_images` (
`id_mot_cle_image` 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.' ,
`id_utilisateur` VARCHAR(32) NOT NULL ,
`id_utilisateur` VARCHAR(255) 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.' ,
81,7 → 81,7
CREATE TABLE IF NOT EXISTS `cel_images_mots_cles` (
`id_image` BIGINT NOT NULL ,
`id_mot_cle_image` VARCHAR(128) CHARACTER SET 'utf8' COLLATE 'utf8_unicode_ci' NOT NULL ,
`id_utilisateur` VARCHAR(32) NOT NULL ,
`id_utilisateur` VARCHAR(128) NOT NULL ,
PRIMARY KEY (`id_image`, `id_mot_cle_image`, `id_utilisateur`) ,
INDEX `image` (`id_image` ASC) )
ENGINE = MyISAM
97,7 → 97,7
CREATE TABLE IF NOT EXISTS `cel_images` (
`id_image` BIGINT NOT NULL AUTO_INCREMENT ,
`ordre` BIGINT 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' ,
`ce_utilisateur` VARCHAR(255) 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 DEFAULT NULL ,
`nom_utilisateur` VARCHAR(255) NULL DEFAULT NULL ,
`courriel_utilisateur` VARCHAR(255) NULL DEFAULT NULL ,
134,7 → 134,7
 
CREATE TABLE IF NOT EXISTS `cel_mots_cles_obs` (
`id_mot_cle_obs` VARCHAR(128) CHARACTER SET 'utf8' COLLATE 'utf8_unicode_ci' NOT NULL ,
`id_utilisateur` VARCHAR(32) NOT NULL ,
`id_utilisateur` VARCHAR(255) 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 ,
167,7 → 167,7
CREATE TABLE IF NOT EXISTS `cel_obs_mots_cles` (
`id_observation` BIGINT NOT NULL ,
`id_mot_cle_obs` VARCHAR(128) CHARACTER SET 'utf8' COLLATE 'utf8_unicode_ci' NOT NULL ,
`id_utilisateur` VARCHAR(32) NOT NULL ,
`id_utilisateur` VARCHAR(128) NOT NULL ,
PRIMARY KEY (`id_observation`, `id_mot_cle_obs`, `id_utilisateur`) ,
INDEX `observation` (`id_observation` ASC) )
ENGINE = MyISAM
262,8 → 262,10
INDEX `date_creation` (`ce_utilisateur` ASC, `date_creation` ASC) ,
INDEX `coordonnees` (`latitude` ASC, `longitude` ASC) ,
INDEX `nom_retenu` (`nom_ret` ASC) ,
INDEX `date_observation` (`date_observation` ASC) ,
INDEX `nom_referentiel` (`nom_referentiel`(5) ASC) )
INDEX `date_observation` (`date_observation` ASC) COMMENT 'Date_transmission : nécessaire à l'ORDER BY utilisé dans la liste d'observation de DEL' ,
INDEX `nom_referentiel` (`nom_referentiel`(5) ASC) COMMENT 'Index sur (bdtfx,bdtfx,isfan)' ,
INDEX `date_transmission` (`date_transmission` DESC) COMMENT 'Nécessaire à CEL/DEL qui officie avec transmission = 1' ,
INDEX `transmission` (`transmission` ASC) )
ENGINE = MyISAM
DEFAULT CHARACTER SET = utf8
COLLATE = utf8_general_ci;
319,10 → 321,10
-- -----------------------------------------------------
DROP VIEW IF EXISTS `cel_utilisateurs` ;
DROP TABLE IF EXISTS `cel_utilisateurs`;
CREATE OR REPLACE VIEW `cel_utilisateurs` AS
SELECT at.U_ID AS id_utilisateur, at.U_SURNAME AS prenom, at.U_NAME AS nom, at.U_MAIL AS courriel, at.U_PASSWD AS mot_de_passe,
ui.licence_acceptee, ui.admin, ui.preferences, ui.date_premiere_utilisation
FROM tela_prod_v4.annuaire_tela AS at
CREATE OR REPLACE VIEW `cel_utilisateurs` AS
SELECT at.U_ID AS id_utilisateur, at.U_SURNAME AS prenom, at.U_NAME AS nom, at.U_MAIL AS courriel, at.U_PASSWD AS mot_de_passe,
ui.licence_acceptee, ui.admin, ui.preferences, ui.date_premiere_utilisation
FROM tela_prod_v4.annuaire_tela AS at
LEFT JOIN cel_utilisateurs_infos AS ui ON (ui.id_utilisateur = at.U_ID);
 
-- -----------------------------------------------------
330,47 → 332,47
-- -----------------------------------------------------
DROP VIEW IF EXISTS `cel_tapir` ;
DROP TABLE IF EXISTS `cel_tapir`;
CREATE OR REPLACE VIEW `cel_tapir` AS
select concat(_utf8'urn:lsid:tela-botanica.org:cel:',`o`.`id_observation`) AS `guid`,
`o`.`id_observation` AS `observation_id`,
date_format(`o`.`date_observation`,'%Y-%m-%d') AS `observation_date`,
`o`.`nom_sel` AS `nom_scientifique_complet`,
`o`.`nom_sel_nn` AS `nom_num_nomenclatural`,
`o`.`nt` AS `nom_num_taxonomique`,
`o`.`famille` AS `nom_famille`,
concat(_utf8'',`zg`.`nom`,' [INSEE:',`zg`.`code`,']') AS `lieu_commune_nom_complet`,
`zg`.`nom` AS `lieu_commune_nom`,
`zg`.`code` AS `lieu_commune_code_insee`,
if((`zg`.`code` <> ''), 'Lion1906 version 26-05-2008 - http://www.lion1906.com/', NULL) AS `lieu_commune_source`,
format(if((`o`.`latitude` <> ''), `o`.`latitude`, `zg`.`wgs84_latitude`), 5) AS `lieu_latitude`,
format(if((`o`.`longitude` <> ''), `o`.`longitude`, `zg`.`wgs84_longitude`), 5) AS `lieu_longitude`,
`o`.`geodatum` AS `lieu_geodatum`,
if((`o`.`geodatum` <> ''), 'Coordonnées issues de l''utilisation de Google Map', NULL) AS `lieu_georeference_source`,
`o`.`lieudit` AS `lieu_localite`,
`o`.`prenom_utilisateur` AS `observateur_prenom`,
`o`.`nom_utilisateur` AS `observateur_nom`,
`o`.`courriel_utilisateur` AS `observateur_courriel`,
concat(`o`.`prenom_utilisateur`,_utf8' ',`o`.`nom_utilisateur`) AS `observateur_nom_complet`,
concat_ws(' ',`o`.`prenom_utilisateur`,`o`.`nom_utilisateur`,concat('<',`o`.`courriel_utilisateur`,'>')) AS `observateur_intitule`,
`o`.`commentaire` AS `observation_commentaire`,
concat(_utf8'nom_num_nomenclatural=',`o`.`nom_sel_nn`,'; ',
'nom_ret=',encodeToDcsv(`o`.`nom_ret`),'; ',
'nom_num_ret=',`o`.`nom_ret_nn`,'; ',
'nom_num_taxonomique=',`o`.`nt`,'; ',
'nom_referentiel=',encodeToDcsv(`o`.`nom_referentiel`),'; ',
'saisie_date_transmission=',`o`.`date_transmission`,'; ',
'saisie_date_creation=',`o`.`date_creation`,'; ',
'ordre=',`o`.`ordre`,'; ',
'station=',encodeToDcsv(`o`.`station`),'; ',
'milieu=',encodeToDcsv(`o`.`milieu`),'; ',
'mots_cles=',encodeToDcsv(`o`.`mots_cles_texte`),'; ',
'zg_utm_secteur=',encodeToDcsv(`zg`.`utm_secteur`),'; ',
'zg_date_modification=',`zg`.`date_modification`) AS `observation_information_complement`,
`o`.`date_modification` AS `saisie_date_modification`,
`o`.`date_creation` AS `saisie_date_creation`
from (`cel_obs` `o`
left join `cel_zones_geo` `zg` on((`o`.`ce_zone_geo` = `zg`.`id_zone_geo`)))
where `o`.`transmission` = 1
CREATE OR REPLACE VIEW `cel_tapir` AS
select concat(_utf8'urn:lsid:tela-botanica.org:cel:',`o`.`id_observation`) AS `guid`,
`o`.`id_observation` AS `observation_id`,
date_format(`o`.`date_observation`,'%Y-%m-%d') AS `observation_date`,
`o`.`nom_sel` AS `nom_scientifique_complet`,
`o`.`nom_sel_nn` AS `nom_num_nomenclatural`,
`o`.`nt` AS `nom_num_taxonomique`,
`o`.`famille` AS `nom_famille`,
concat(_utf8'',`zg`.`nom`,' [INSEE:',`zg`.`code`,']') AS `lieu_commune_nom_complet`,
`zg`.`nom` AS `lieu_commune_nom`,
`zg`.`code` AS `lieu_commune_code_insee`,
if((`zg`.`code` <> ''), 'Lion1906 version 26-05-2008 - http://www.lion1906.com/', NULL) AS `lieu_commune_source`,
format(if((`o`.`latitude` <> ''), `o`.`latitude`, `zg`.`wgs84_latitude`), 5) AS `lieu_latitude`,
format(if((`o`.`longitude` <> ''), `o`.`longitude`, `zg`.`wgs84_longitude`), 5) AS `lieu_longitude`,
`o`.`geodatum` AS `lieu_geodatum`,
if((`o`.`geodatum` <> ''), 'Coordonnées issues de l''utilisation de Google Map', NULL) AS `lieu_georeference_source`,
`o`.`lieudit` AS `lieu_localite`,
`o`.`prenom_utilisateur` AS `observateur_prenom`,
`o`.`nom_utilisateur` AS `observateur_nom`,
`o`.`courriel_utilisateur` AS `observateur_courriel`,
concat(`o`.`prenom_utilisateur`,_utf8' ',`o`.`nom_utilisateur`) AS `observateur_nom_complet`,
concat_ws(' ',`o`.`prenom_utilisateur`,`o`.`nom_utilisateur`,concat('<',`o`.`courriel_utilisateur`,'>')) AS `observateur_intitule`,
`o`.`commentaire` AS `observation_commentaire`,
concat(_utf8'nom_num_nomenclatural=',`o`.`nom_sel_nn`,'; ',
'nom_ret=',encodeToDcsv(`o`.`nom_ret`),'; ',
'nom_num_ret=',`o`.`nom_ret_nn`,'; ',
'nom_num_taxonomique=',`o`.`nt`,'; ',
'nom_referentiel=',encodeToDcsv(`o`.`nom_referentiel`),'; ',
'saisie_date_transmission=',`o`.`date_transmission`,'; ',
'saisie_date_creation=',`o`.`date_creation`,'; ',
'ordre=',`o`.`ordre`,'; ',
'station=',encodeToDcsv(`o`.`station`),'; ',
'milieu=',encodeToDcsv(`o`.`milieu`),'; ',
'mots_cles=',encodeToDcsv(`o`.`mots_cles_texte`),'; ',
'zg_utm_secteur=',encodeToDcsv(`zg`.`utm_secteur`),'; ',
'zg_date_modification=',`zg`.`date_modification`) AS `observation_information_complement`,
`o`.`date_modification` AS `saisie_date_modification`,
`o`.`date_creation` AS `saisie_date_creation`
from (`cel_obs` `o`
left join `cel_zones_geo` `zg` on((`o`.`ce_zone_geo` = `zg`.`id_zone_geo`)))
where `o`.`transmission` = 1
AND (`o`.`mots_cles_texte` NOT LIKE '%sensible%' OR `o`.`mots_cles_texte` IS NULL);