Zitat von
Hansa:
Jetzt ist nur noch die Frage, wie man solch eine Prozedur Feld/Tabellen- unabhängig machen kann.
Wäre nun interessant ob Du Interbase oder Firebird verwendest. Ab Firebird 1.5 würde ich folgendes vorschlagen:
SQL-Code:
CREATE PROCEDURE HELPME (
P_ID
INTEGER,
P_TABELLE
VARCHAR(31),
P_FELD
VARCHAR(31)
)
RETURNS (
LETZTEAENDERUNG
TIMESTAMP
)
AS
DECLARE VARIABLE
SQL VARCHAR(255);
BEGIN
SQL = '
select ' || P_FELD || '
from ' || P_TABELLE || '
where ID = ' || CAST(P_ID
AS VARCHAR(15));
EXECUTE STATEMENT :
SQL INTO :LETZTEAENDERUNG;
IF (LETZTEAENDERUNG <> '
NOW')
THEN
LETZTEAENDERUNG = '
NOW';
SUSPEND;
END;
Gruß,
Marcel