Nous utilisons des cookies pour vous garantir la meilleure expérience sur notre site. Si vous continuez à utiliser ce dernier, nous considèrerons que vous acceptez l'utilisation des cookies. J'ai compris ! ou En savoir plus !.
Nom d'utilisateur    Mot de passe              Toujours pas inscrit ?   Mot de passe oublié ?

Annonce

Rencontres des Utilisateurs Francophones de QGIS 2019 à Montpellier

12 et 13 décembre 2019 à Montpellier.

Cet événement est organisé en partenariat entre Montpellier SupAgro et l’OSGeo-fr.

http://conf.qgis.osgeo.fr/

 

#1 Tue 13 August 2019 16:27

neskuik01
Membre
Date d'inscription: 16 Feb 2015
Messages: 72

Supprimer depuis une VUE sql

Bonjour,

Je m'appuie sur les travaux de Florent Vanhoutte (geo.compiegnois.fr) pour mettre en place le standard RAEPA au sein de la collectivité ou je travail. Travaillant avec des vues j'ai adapté le script extension qui définit les fonctions pour l'ajout, la modification et la suppression directement depuis les "vues" sql.

J'ai donc un Trigger INSTEAD OF  qui pour chaque ligne appel une fonction, qui elle définit les règles à appliquer.
Cependant la partie Suppression est en cours de développement.   

D'après ce que je lis sur internet pour réaliser un trigger INSTEAD OF DELETE  il faut une table intermédiaire dans laquelle on stocke la clé primaire ?
Est-ce-que quelqu'un aurait un exemple de fonction qui intègre une règle quant aux suppressions ?

Est ce que je peux rédiger ça de la sorte :

Code:

ELSIF (TG_OP='DELETE') THEN 
DELETE FROM schema.table_annexe
WHERE schema.tableprincipale.idpk = idpk

Hors ligne

 

#2 Wed 14 August 2019 13:49

Ben22
Membre
Date d'inscription: 11 May 2016
Messages: 45

Re: Supprimer depuis une VUE sql

Votre clé primaire est-elle appelée sur votre vue ?

Si oui :

Code:

...
ELSIF (TG_OP='DELETE') THEN 

  -- suppression sur la table annexe
  DELETE FROM schema.table_annexe as t1
  WHERE t1.idpk = OLD.idpk; /* OLD est ici la valeur d'idpk de l'entité supprimée si trigger en "EACH ROW"*/

RETURN OLD;

END IF;
...

Hors ligne

 

#3 Wed 14 August 2019 14:34

neskuik01
Membre
Date d'inscription: 16 Feb 2015
Messages: 72

Re: Supprimer depuis une VUE sql

Bonjour

Oui la clé primaire est appelée par la vue.
Mhh c'est exactement comme ca que je l'ai écrit (enfin j'avais mis un RETURN NEW) mais  j'ai toujours une erreur "entrée manquante de la clause FROM pour la table raepa_canal"  -_-

Hors ligne

 

#4 Wed 14 August 2019 14:40

Ben22
Membre
Date d'inscription: 11 May 2016
Messages: 45

Re: Supprimer depuis une VUE sql

Pouvez-vous mettre le bout de fonction qui pose problème  ?

Hors ligne

 

Pied de page des forums

Powered by FluxBB

Partagez  |