Hallo allerseits,
Nun, wir haben hier ein (nach meiner Ansicht) etwas besch****eidenes MS-SQl DB-System, welches leider in seiner Struktur kaum mehr veränderbar ist ohne alles neu aufzubauen. Um mit möglichst wenig Aufwand einige Automatisierungen einzubringen, möchte ich einige zusätzliche Functionen und Prozeduren erstellen, welche so ne Art "For-each" durchlaufen können.
Es werden Messwerte von telemetriesystemen aufgezeichnet. Jedes solche Historyfile hat für seine Messdaten eine eigene Tabelle.
Ich möchte jetzt angenommen den letzten Messerwert pro Tabelle ermitteln (per funktion), kann ich da mit irgendwie den Tabellenamen dynamisch per Variable übergeben?
Die funktion würde dann also so ungefähr folgendes machen:
<PRE>
CREATE function return_lastdt ( @table as sysobject)
RETURNS datetime
BEGIN
declare @lastdt as datetime
Select @lastdt = max(dt) from @table
return @lastdt
END
</PRE>
So funktioniert dies aber natürlich nicht. Wie kann ich das passend realisieren?
Nun, wir haben hier ein (nach meiner Ansicht) etwas besch****eidenes MS-SQl DB-System, welches leider in seiner Struktur kaum mehr veränderbar ist ohne alles neu aufzubauen. Um mit möglichst wenig Aufwand einige Automatisierungen einzubringen, möchte ich einige zusätzliche Functionen und Prozeduren erstellen, welche so ne Art "For-each" durchlaufen können.
Es werden Messwerte von telemetriesystemen aufgezeichnet. Jedes solche Historyfile hat für seine Messdaten eine eigene Tabelle.
Ich möchte jetzt angenommen den letzten Messerwert pro Tabelle ermitteln (per funktion), kann ich da mit irgendwie den Tabellenamen dynamisch per Variable übergeben?
Die funktion würde dann also so ungefähr folgendes machen:
<PRE>
CREATE function return_lastdt ( @table as sysobject)
RETURNS datetime
BEGIN
declare @lastdt as datetime
Select @lastdt = max(dt) from @table
return @lastdt
END
</PRE>
So funktioniert dies aber natürlich nicht. Wie kann ich das passend realisieren?
Comment