Servus,
Neues Board??? Sieht schick aus!!!
Hier meine Frage:
Ich habe eine Funktion die recht lange dauern kann, daher möchte ich die verweildauer in einer Tabelle eintragen.
So soeht der Code aus:
Scheinbar steht in der Variablen "CURRENT_TIMESTAMP" immer das selbe drin.PHP-Code:DECLARE
matview ALIAS FOR $1;
entry t_matviews%ROWTYPE;
dtnow TIMESTAMP;
BEGIN
dtNow = CURRENT_TIMESTAMP;
SELECT * INTO entry FROM t_matviews WHERE mv_name = matview;
IF NOT FOUND THEN
RAISE EXCEPTION 'Materialized view % does not exist.', matview;
END IF;
EXECUTE 'DELETE FROM ' || matview;
EXECUTE 'INSERT INTO ' || matview
|| ' SELECT * FROM ' || entry.v_name;
UPDATE t_matviews SET last_refresh=CURRENT_TIMESTAMP, idauer=(CURRENT_TIMESTAMP - dtNow) WHERE mv_name=matview;
RETURN;
END
Denn obwohl die Funktion etwa 2 minuten benötigt steht in der Tabelle bei idauer = 00:00:00
Wo liegt mein Fehler?
Geändert von ipConfig (22.01.2010 um 13:48 Uhr) Grund: Titeländerung um diesen Thread als gelöst zu markieren
Du siehst den Unterschied?Code:test=# begin; BEGIN test=*# select now(); now ------------------------------- 2010-01-22 12:14:27.693285+01 (1 row) test=*# select current_timestamp; now ------------------------------- 2010-01-22 12:14:27.693285+01 (1 row) test=*# select timeofday(); timeofday ------------------------------------- Fri Jan 22 12:14:37.521412 2010 CET (1 row) test=*# select timeofday(); timeofday ------------------------------------- Fri Jan 22 12:14:39.542168 2010 CET (1 row) test=*# select current_timestamp; now ------------------------------- 2010-01-22 12:14:27.693285+01 (1 row)
current_timestamp ist nix weiter als now(), welches den timestamp zu Begin der laufenden TX liefert. timeofday() hingegen liefert den wirklich wahren Zeitpunkt.
Andreas
--
https://www.xing.com/profile/Andreas_Kretschmer7ads Das hatte dir akretschmer gestern schon gesagt und siehe da sobald du das machst, funktioniert es ;-)
Das wars!
Dankeschön
Links: Tobias Bauer - IT- und Funkdienstleistungen - Bilderrahmen-kaufen.de - Der Onlineshop für Bilderrahmen & Fotorahmen - Funkforum
Lesezeichen