Alle ESQL-Datentypen (mit Ausnahme von REFERENCE) unterstützen das Konzept des Nullwerts. Der Wert Null bedeutet, dass der Wert unbekannt, nicht definiert oder nicht initialisiert ist. Nullwerte können auftreten, wenn Sie auf nicht vorhandene Nachrichtenfelder verweisen, auf Datenbankspalten zugreifen, für die keine Daten verfügbar sind oder das Schlüsselwort NULL verwenden, das einen Null-Literalwert liefert.
Null hat einen eigenen Status und unterscheidet sich von allen anderen Werten. Insbesondere bei Ganzzahlen ist Null nicht dasselbe wie der Wert 0, und auch bei Zeichenvariablen ist Null nicht dasselbe wie eine Zeichenfolge mit null Zeichen. Die Regeln der ESQL-Arithmetik berücksichtigen Nullwerte, die Sie für gewöhnlich nicht bemerken. Generell, jedoch nicht immer, besagen diese Regeln, dass das Ergebnis Null ist, wenn ein Operand Null ist.
Wenn ein Ausdruck einen Nullwert zurückgibt, ist der Datentyp im allgemeinen bekannt. Alle Nullwerte, egal welchen Ursprungs, werden daher gleichwertig behandelt.
Dies rührt von ihrer Zugehörigkeit zum Datentyp NULL, der stets nur einen Wert haben kann: Null.
Ein Ausdruck gibt immer NULL zurück, wenn eines seiner Elemente NULL ist.
Verwenden Sie den unter Operator= beschriebenen IS-Operator, um herauszufinden, ob ein Feld einen Nullwert enthält.
SET OutputRoot.XML.Msg.Data.Name = NULL; -- dieser Befehl löscht das Feld
SET OutputRoot.XML.Msg.Data.Name VALUE = NULL; -- dieser Befehl weist einem Feld einen NULL-Wert zu, ohne es zu löschen