CREATE TRIGGER¶
Syntax:
CREATE TRIGGER ON input_stream FOR EACH ROW
[ WHEN filter ] EXECUTE func_name(params)
Example:
jubaql> CREATE TRIGGER ON ds FOR EACH ROW
EXECUTE printLines(3, label)
Explanation¶
CREATE TRIGGER
installs a previously defined trigger function on the given stream, i.e., the function will be called for every item in the stream (or only for items matching a certain condition).
input_stream
is the stream to use as input. The data source that this stream is derived from must not yet be in process (or done with processing) when the statement is issued.filter
is a filter expression just like the ones that can be used in aWHERE
clause of a Spark SQLSELECT
statement. If given, the function will be called only for the items in the input stream matching that condition.func_name
is the name of a function previously defined usingCREATE TRIGGER FUNCTION
(see CREATE FUNCTION).params
is a list of expressions to be used as a parameter for that function.