As per earlier vague hint, I'm bringing the CREATE FUNCTION syntax in line
with SQL99. Everything is fully backward compatible. Here is the new
synopsis:
CREATE [OR REPLACE] FUNCTION name (args) RETURNS type option [ option... ] [WITH (...)];
where option is any of these in any order:
AS string [,string]
LANGUAGE name
IMMUTABLE
STABLE
VOLATILE
CALLED ON NULL INPUT -- SQL spelling of not "strict"
RETURNS NULL ON NULL INPUT -- SQL spelling of "strict"
STRICT
[EXTERNAL] SECURITY DEFINER -- SQL spelling of "setuid"
[EXTERNAL] SECURITY INVOKER -- SQL spelling of not "setuid"
IMPLICIT CAST
(The SECURITY options are noops right now, but I'm planning to implement
them next.)
The WITH (...) options are still there, but sort of less encouraged, I
guess.
--
Peter Eisentraut peter_e@gmx.net