[Qgis-user] VIEW PG RULE

Sylvia Preuß sylvia.preuss at obk.de
Thu Feb 20 04:05:05 PST 2014


Hello everybody,

 

I’d like to save from a Postgis-view in QGIS some changes. The rule RULE
onupdate_sichtaufeinsundzwei has one INSERT and two UPDATE-commands. But
after changing an attribute in QGIS only the first UPDATE works. If I change
the order of UPDATE tabelle1 and UPDATE tabelle2 again the UPDATE that’s on
top is executed only. I tried BEGIN; END;, VACUUM ANALYZE, BEGIN;COMMIT to
make both UPDATES run but It’s not working. 

(To put everything into a function is not working either.)

 

CREATE OR REPLACE VIEW meinschema.sichtaufeinsundzwei AS 

 SELECT tabelle1.nummer, tabelle1.tag, tabelle1.attributexxx, tabelle1.tid,
tabelle2.gid, tabelle2.the_geom

   FROM meinschema.tabelle2, meinschema.tabelle1

  WHERE tabelle1.nummer = tabelle2.attributeyyy AND tabelle1.tag =
tabelle2.tag;

 

CREATE OR REPLACE RULE onupdate_sichtaufeinsundzwei AS

    ON UPDATE TO meinschema.sichtaufeinsundzwei DO INSTEAD 

                ( INSERT INTO meinschema.temptable (old_nr, new_nr, oldtag,
newtag, oldtid, oldgid, the_geom) 

  VALUES (old.nummer, new.nummer, old.tag, new.tag, old.tid, old.gid,
new.the_geom);

UPDATE meinschema.tabelle2 SET tag = 10

  WHERE tabelle2.gid = ( SELECT temptable.oldgid

           FROM meinschema.temptable);

UPDATE meinschema.tabelle1 SET tag = 10

  WHERE tabelle1.tid = ( SELECT temptable.oldtid

           FROM meinschema.temptable);

);  

 

CREATE TABLE meinschema.tabelle1

(

  nummer bigint NOT NULL,

  attributexxx character varying(254),

  tag smallint,

  tid serial NOT NULL,

  CONSTRAINT tabelle1_pkey PRIMARY KEY (tid)

)

WITH OIDS;

 

CREATE TABLE meinschema.tabelle2

(

  gid serial NOT NULL,

  attributeyyy bigint,

  tag integer,

  the_geom geometry,

  CONSTRAINT tabelle2_pkey PRIMARY KEY (gid),

  CONSTRAINT enforce_dims_the_geom CHECK (ndims(the_geom) = 2),

  CONSTRAINT enforce_geotype_the_geom CHECK (geometrytype(the_geom) =
'POLYGON'::text OR the_geom IS NULL),

  CONSTRAINT enforce_srid_the_geom CHECK (srid(the_geom) = 25832)

)

WITH OIDS;

 

CREATE TABLE meinschema.temptable

(

  old_nr bigint,

  new_nr bigint,

  oldtag smallint,

  newtag smallint,

  oldtid integer,

  oldgid integer,

  id serial NOT NULL,

  the_geom geometry,

  CONSTRAINT temptable_pkey PRIMARY KEY (id)

)

WITH OIDS;

 

PostgreSQL 8.1.4 on i686-pc-linux-gnu, compiled by GCC gcc (GCC) 4.1.0 (SUSE
Linux)

PostGIS 1.3 

QGIS 2.0.1 on Windows7


Can somebody help me concerning the rule or is there another mistake?

 

Thank you

Sylvia


 

 

 



Der E-Mail-Dienst des Oberbergischen Kreises dient ausschliesslich der dienstlichen Kommunikation. 
Senden Sie deshalb keine E-Mails privaten Inhalts an E-Mail-Adressen des Oberbergischen Kreises.
Es wird darauf hingewiesen, dass neben der Person, an die Ihre E-Mail gerichtet ist, auch deren Vertretung im Amt einen unmittelbaren Zugriff auf Ihre Nachricht hat. Fuer Berufsgeheimnistraeger gelten abweichende Regelungen. 
Es wird ausserdem darauf hingewiesen, dass die Kommunikation per E-Mail ohne Authentifizierung und Verschluesselung unsicher ist, da fuer unberechtigte Dritte grundsaetzlich die Moeglichkeit der Kenntnisnahme und Manipulation besteht.
Es wird deshalb keine Verantwortung fuer den Inhalt dieser Nachricht uebernommen, da eine Manipulation nicht ausgeschlossen werden kann.
Obwohl alle angemessenen Vorkehrungen getroffen wurden, um sicherzustellen, dass Anlagen dieser E-Mail virusgeprueft sind, wird empfohlen, anhaengende Dateien vor dem Oeffnen durch I
 hr eigenes Virus-Programm zu pruefen, da keinerlei Haftung fuer Schaeden uebernommen wird, die infolge etwaiger Software-Viren entstehen koennten.
Der Inhalt dieser E-Mail ist ausschliesslich fuer die bezeichnete Person bestimmt. Wenn Sie nicht der vorgesehene Adressat dieser E-Mail oder dessen Vertretung sein sollten, beachten Sie bitte, dass jede Form der Kenntnisnahme, Veroeffentlichungg, Vervielfaeltigung oder Weitergabe des Inhalts dieser E-Mail unzulaessig ist. In diesem Fall wird darum gebeten, sich mit der absendenden Person der E-Mail in Verbindung zu setzen.

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.osgeo.org/pipermail/qgis-user/attachments/20140220/76a50fc4/attachment.html>


More information about the Qgis-user mailing list