Subversion Repositories eFlore/Applications.del

Compare Revisions

Ignore whitespace Rev 783 → Rev 784

/trunk/doc/bdd/sql/tela/tb_del_cel_vues.sql
1,40 → 1,70
-- TODO : Voir comment remplacer le test REGEXP par quelque chose de plus simple.
 
DROP VIEW IF EXISTS del_utilisateur ;
DROP TABLE IF EXISTS del_utilisateur;
-- -----------------------------------------------------
-- View `del_utilisateurs`
-- -----------------------------------------------------
DROP VIEW IF EXISTS `del_utilisateur` ;
DROP TABLE IF EXISTS `del_utilisateur`;
DELIMITER $$
CREATE OR REPLACE VIEW del_utilisateur 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 tb_cel.cel_utilisateurs_infos AS ui
LEFT JOIN tela_prod_v4.annuaire_tela AS at ON (ui.id_utilisateur = at.U_ID);
$$
DELIMITER ;
 
DROP VIEW IF EXISTS del_observation ;
DROP TABLE IF EXISTS del_observation;
CREATE VIEW del_observation AS
SELECT id_observation, ce_utilisateur, nom_sel, nom_sel_nn, nom_ret, nom_ret_nn, nt, famille,
ce_zone_geo, zone_geo, lieudit, station, milieu,
date_observation, mots_cles_texte, commentaire,
date_creation, date_modification, date_transmission
FROM tb_cel.cel_obs
WHERE transmission = '1'
AND ce_utilisateur REGEXP '^[[:digit:]]+$';
;
 
DROP VIEW IF EXISTS del_obs_image ;
DROP TABLE IF EXISTS del_obs_image;
CREATE VIEW del_obs_image AS
SELECT oi.id_image, oi.id_utilisateur, oi.id_observation, oi.date_liaison
FROM tb_cel.cel_obs_images AS oi
INNER JOIN tb_cel.cel_obs AS o ON (oi.id_observation = o.id_observation)
WHERE o.transmission = '1'
AND oi.id_utilisateur REGEXP '^[[:digit:]]+$';
-- -----------------------------------------------------
-- View `del_observations`
-- -----------------------------------------------------
DROP VIEW IF EXISTS `del_observation` ;
DROP TABLE IF EXISTS `del_observation`;
DELIMITER $$
CREATE OR REPLACE VIEW del_observation AS
SELECT id_observation, ce_utilisateur, nom_sel, nom_sel_nn, nom_ret, nom_ret_nn, nt, famille,
ce_zone_geo, zone_geo, lieudit, station, milieu,
date_observation, mots_cles_texte, commentaire,
date_creation, date_modification, date_transmission
FROM tb_cel.cel_obs AS o
INNER JOIN tb_cel.cel_utilisateurs_infos AS u ON (o.ce_utilisateur = u.id_utilisateur)
WHERE transmission = '1'
$$
DELIMITER ;
 
DROP VIEW IF EXISTS del_image ;
DROP TABLE IF EXISTS del_image;
CREATE VIEW del_image AS
SELECT i.id_image, i.ce_utilisateur, i.hauteur, i.largeur, i.date_prise_de_vue, i.mots_cles_texte,
i.commentaire, i.nom_original, i.date_modification, i.date_creation, i.publiable_eflore
FROM tb_cel.cel_images AS i
INNER JOIN tb_cel.cel_obs_images AS oi ON (i.id_image = oi.id_image)
INNER JOIN tb_cel.cel_obs AS o ON (oi.id_observation = o.id_observation)
WHERE o.transmission = '1'
AND i.ce_utilisateur REGEXP '^[[:digit:]]+$';
;
 
-- -----------------------------------------------------
-- View `del_images`
-- -----------------------------------------------------
DROP VIEW IF EXISTS `del_image` ;
DROP TABLE IF EXISTS `del_image`;
DELIMITER $$
CREATE OR REPLACE VIEW del_image AS
SELECT i.id_image, i.ce_utilisateur, i.hauteur, i.largeur, i.date_prise_de_vue, i.mots_cles_texte,
i.commentaire, i.nom_original, i.date_modification, i.date_creation, i.publiable_eflore
FROM tb_cel.cel_images AS i
INNER JOIN tb_cel.cel_obs_images AS oi ON (i.id_image = oi.id_image)
INNER JOIN tb_cel.cel_obs AS o ON (oi.id_observation = o.id_observation)
INNER JOIN tb_cel.cel_utilisateurs_infos AS u ON (i.ce_utilisateur = u.id_utilisateur)
WHERE o.transmission = '1'
$$
DELIMITER ;
 
;
 
-- -----------------------------------------------------
-- View `del_obs_images`
-- -----------------------------------------------------
DROP VIEW IF EXISTS `del_obs_image` ;
DROP TABLE IF EXISTS `del_obs_image`;
DELIMITER $$
CREATE OR REPLACE VIEW del_obs_image AS
SELECT oi.id_image, oi.id_observation, oi.date_liaison
FROM tb_cel.cel_obs_images AS oi
INNER JOIN tb_cel.cel_obs AS o ON (oi.id_observation = o.id_observation)
INNER JOIN tb_cel.cel_utilisateurs_infos AS u ON (o.ce_utilisateur = u.id_utilisateur)
WHERE o.transmission = '1'
$$
DELIMITER ;
 
;