Karo
07-12-07, 10:24
Hallo,
könnt ihr mir evtl. bei folgendem Problem weiterhelfen?
Wir wollen bei einer Datei immer einen Satz ausgeben, wenn etwas geändert, erfasst oder gelöscht wird. Dazu wird der User, der Event, der Auslöser, der Zeitstempel und der gesamte Datensatz weggeschrieben. Leider funktioniert dies aber nicht.
Zum testen des SQL Befehls habe ich auf der AS400 folgenden funktionsfähigen Befehl eingegeben:
insert into xxlib/xxfile (select a.*, USER, 'B', 'U', CURRENT TIME from tmpalt a)
insert into xxlib/xxfile (select a.*, USER, 'A', 'U', CURRENT TIME from tmpneu a)
Erläuterung: 'A' = after, 'B' = before, 'U' = update, 'D' wäre Delete, 'I' wäre Insert
Gebe ich den folgenden Befehl (bei den Trigger SQL Anweisungen) über den Operations Navigator ein,
BEGIN ATOMIC
insert into xxlib.xxfile (select a.*, USER, '1', '2', CURRENT TIME from tmpalt a);
insert into xxlib.xxfile (select a.*, USER, '1', '2', CURRENT TIME from tmpneu a);
END
kommt folgende Fehlermeldung:
Wert für Spalte oder Variable XTIME nicht verträglich.
Nachrichten-ID:SQL0408
Ursache . . . . : Die Datenart des Quellenwerts ist mit der Datenart der Zielspalte oder der Variablen XTIME nicht verträglich. Handelt es sich bei der Anweisung um eine Anweisung INSERT oder UPDATE, ist XTIME eine Spalte in Tabelle XXFILE in XXLIB.-- Einer Spalte einer numerischen Art können Werte einer numerischen Art zugeordnet werden.-- Einer Spalte der Art Zeichen, DBCS, Grafik oder LOB können Daten der Art Zeichen, DBCS, Grafik oder LOB (großes Objekt) zugeordnet werden.-- Einer Spalte der Art Zeichen, DBCS oder Grafik kann ein Datums-, Zeit- oder Zeitmarkenwert zugeordnet werden.-- Einer Spalte der Art Datum, Zeit oder Zeitmarke kann ein Wert der Art Zeichen, DBCS oder Grafik zugeordnet werden.-- Einem Datum kann ein Datumswert zugeordnet werden.-- Einer Uhrzeit kann ein Zeitwert zugeordnet werden.-- Einer Zeitmarke kann ein Zeitmarkenwert zugeordnet werden.-- Ein Wert, der einer benutzerdefinierten Art zugeordnet wird, muss in die Quellenart umgestuft werden können.-- Bei der Zuordnung zu einer Datalink muss die Funktion DLVALUE angegeben werden.Fehlerbeseitigung: Die Spalte, die Host-Variable, die Konstante oder die Funktion, die XTIME zugeordnet ist, so ändern, dass sie verträglich ist. Die Anforderung wiederholen.
Kann mir jemand weiterhelfen, der schon ähnliche Erfahrungen gemacht hat?
Vielen Dank.
Gruß, Karo
könnt ihr mir evtl. bei folgendem Problem weiterhelfen?
Wir wollen bei einer Datei immer einen Satz ausgeben, wenn etwas geändert, erfasst oder gelöscht wird. Dazu wird der User, der Event, der Auslöser, der Zeitstempel und der gesamte Datensatz weggeschrieben. Leider funktioniert dies aber nicht.
Zum testen des SQL Befehls habe ich auf der AS400 folgenden funktionsfähigen Befehl eingegeben:
insert into xxlib/xxfile (select a.*, USER, 'B', 'U', CURRENT TIME from tmpalt a)
insert into xxlib/xxfile (select a.*, USER, 'A', 'U', CURRENT TIME from tmpneu a)
Erläuterung: 'A' = after, 'B' = before, 'U' = update, 'D' wäre Delete, 'I' wäre Insert
Gebe ich den folgenden Befehl (bei den Trigger SQL Anweisungen) über den Operations Navigator ein,
BEGIN ATOMIC
insert into xxlib.xxfile (select a.*, USER, '1', '2', CURRENT TIME from tmpalt a);
insert into xxlib.xxfile (select a.*, USER, '1', '2', CURRENT TIME from tmpneu a);
END
kommt folgende Fehlermeldung:
Wert für Spalte oder Variable XTIME nicht verträglich.
Nachrichten-ID:SQL0408
Ursache . . . . : Die Datenart des Quellenwerts ist mit der Datenart der Zielspalte oder der Variablen XTIME nicht verträglich. Handelt es sich bei der Anweisung um eine Anweisung INSERT oder UPDATE, ist XTIME eine Spalte in Tabelle XXFILE in XXLIB.-- Einer Spalte einer numerischen Art können Werte einer numerischen Art zugeordnet werden.-- Einer Spalte der Art Zeichen, DBCS, Grafik oder LOB können Daten der Art Zeichen, DBCS, Grafik oder LOB (großes Objekt) zugeordnet werden.-- Einer Spalte der Art Zeichen, DBCS oder Grafik kann ein Datums-, Zeit- oder Zeitmarkenwert zugeordnet werden.-- Einer Spalte der Art Datum, Zeit oder Zeitmarke kann ein Wert der Art Zeichen, DBCS oder Grafik zugeordnet werden.-- Einem Datum kann ein Datumswert zugeordnet werden.-- Einer Uhrzeit kann ein Zeitwert zugeordnet werden.-- Einer Zeitmarke kann ein Zeitmarkenwert zugeordnet werden.-- Ein Wert, der einer benutzerdefinierten Art zugeordnet wird, muss in die Quellenart umgestuft werden können.-- Bei der Zuordnung zu einer Datalink muss die Funktion DLVALUE angegeben werden.Fehlerbeseitigung: Die Spalte, die Host-Variable, die Konstante oder die Funktion, die XTIME zugeordnet ist, so ändern, dass sie verträglich ist. Die Anforderung wiederholen.
Kann mir jemand weiterhelfen, der schon ähnliche Erfahrungen gemacht hat?
Vielen Dank.
Gruß, Karo