verwendetes Datenbanksystem: Oracle9
Hi,
ich habe zwei Tabellen, die von der Struktur identisch sind. Die eine ist eine Produktivtabelle, hier werden nur die Daten von 2 Wochen gespeichert, die andere dient als History. Hintergrund: Es werden pro Tag ca 100.000 Zeilen geschrieben, und bei 9 bis 10 Mio. Zeilen werden dann Summenfunktionen usw. sehr langsam...
Nun wollte ich das über einen Trigger lösen, wenn in Prodtabelle Zeile eingefügt, dann in History-Tabelle schreiben. So etwa:
insert into history select * from NEW (NEW ist die referenzierte neue Zeile)
Geht aber nicht. Gibts ne einfache Möglichkeit, oder muss ich wirklich:
insert into history values (:NEW.ID, NEW.DATUM, .....)
Sind 68 Spalten und ich bin schreibfaul 😃
Grüße Oli
Viele Grüße, Oli
Sind 68 Spalten und ich bin schreibfaul 🙂
ich fürchte da musst du durch.. 😁
Möglich wäre es auch per DataReader o.ä. das Schema der Tabelle auszulesen und entsprechend eine Abfrage generieren zu lassen.
Der Aufwand wäre bestimmt geringer als per Hand alles zu tippen 😮)
Beispiel für Umsetzung:
http://support.microsoft.com/kb/310107/de
Ist im Grund auch mit anderen Datenbanken möglich 😮)
T-Virus
Developer, Developer, Developer, Developer....
99 little bugs in the code, 99 little bugs. Take one down, patch it around, 117 little bugs in the code.
Ich kenne mich mit Oracle nicht aus, aber du könntest doch
insert into history select * from produktiv where ID = :NEW.ID;
schreiben, oder kann Oracle das nicht?