RE: [PostNAS] gml_id in Länge 16 oder 32

"Jäger, Frank (KRZ)" F.Jaeger at KRZ.DE
Fre Nov 4 07:59:02 EDT 2011


...

> Beim OBK hatten wird das Feld featureid in der Tabelle delete auf
> character(32) gesetzt.
...
> Vor dem Aufruf der Funktion deletefeature(text, text) wird 
> folgendes Update ausgeführt:
> 
> Vorbereitung der Spalte featureid
> 
> UPDATE "delete" SET featureid = substring(featureid from 1 for 16);
> 
> Bei diesem Ansatz geht das Vorgängerobjekt verloren, 
...
> - --
> 
> Schönen Gruß
> 
> Astrid Emde
> 

Hallo Astrid,
das sieht bei mir auch so aus.

Also war die Erweiterung der gml_id auf 32 Stellen, die ich gerade teste, eher schlecht.
Ich hatte befürchtet, es würde was abgeschnitten, was die Aktualisierungs-Logik durcheinander bringt.

Es ist aber wohl umgekeht. Der folgende Teil der Funktion "deleteFeature" funktioniert nur, wenn die gml_id genau 16 Stellen hat, und nicht den Datums-Anhang:

  BEGIN 
       query := 'DELETE FROM ' || $1 || ' WHERE gml_id = ''' || $2 || '''';

Sonst müsste man mit like $2% löschen.

Frank