diff options
author | Bruce Momjian <bruce@momjian.us> | 1999-10-30 16:01:19 +0000 |
---|---|---|
committer | Bruce Momjian <bruce@momjian.us> | 1999-10-30 16:01:19 +0000 |
commit | dbdb80baca733c4fc07ed4bb748bcdd1186ce2dc (patch) | |
tree | 619e022ecf72e2996b9fa050786693347c4664e1 /src/bin/pgaccess/lib/help/create_function.hlp | |
parent | c60ecd8f8c576873006febb51eeb23631f032d6d (diff) | |
download | postgresql-dbdb80baca733c4fc07ed4bb748bcdd1186ce2dc.tar.gz postgresql-dbdb80baca733c4fc07ed4bb748bcdd1186ce2dc.zip |
Remove 0.96 for update to 0.98
Diffstat (limited to 'src/bin/pgaccess/lib/help/create_function.hlp')
-rw-r--r-- | src/bin/pgaccess/lib/help/create_function.hlp | 69 |
1 files changed, 0 insertions, 69 deletions
diff --git a/src/bin/pgaccess/lib/help/create_function.hlp b/src/bin/pgaccess/lib/help/create_function.hlp deleted file mode 100644 index 828f157c618..00000000000 --- a/src/bin/pgaccess/lib/help/create_function.hlp +++ /dev/null @@ -1,69 +0,0 @@ -.pgaw:Help.f.t insert end \ -"Synopsis" {bold} " - -CREATE FUNCTION name ( \[ ftype \[, ...\] \] ) -RETURNS rtype -AS definition -LANGUAGE 'langname' -" {code} " - -name" {italic} " - The name of a function to create. - -" {} "ftype" {italic} " - The data type of function arguments. - -" {} "rtype" {italic} " - The return data type. - -" {} "definition" {italic} " - A string defining the function; the meaning depends on the language. It may be an internal function name, the path to an object file, an SQL query, or text in a procedural language. - -" {} "langname" {italic} " - may be 'C', 'sql', 'internal' or 'plname', where 'plname' is the name of a created procedural language. See CREATE LANGUAGE for details. - -" {} "Outputs" {bold} " - -CREATE - This is returned if the command completes successfully. - -CREATE FUNCTION allows a Postgres user to register a function with a database. Subsequently, this user is treated as the owner of the function. - -" {} "Notes:" {italic} "Refer to the chapter on functions in the PostgreSQL Programmer's Guide for further information. - -Use " {} "DROP FUNCTION" {link drop_function} " to drop user-defined functions. - -Postgres allows function \"overloading\"; that is, the same name can be used for several different functions so long as they have distinct argument types. This facility must be used with caution for INTERNAL and C-language functions, however. - -Two INTERNAL functions cannot have the same C name without causing errors at link time. To get around that, give them different C names (for example, use the argument types as part of the C names), then specify those names in the AS clause of CREATE FUNCTION. If the AS clause is left empty then CREATE FUNCTION assumes the C name of the function is the same as the SQL name. - -For dynamically-loaded C functions, the SQL name of the function must be the same as the C function name, because the AS clause is used to give the path name of the object file containing the C code. In this situation it is best not to try to overload SQL function names. It might work to load a C function that has the same C name as an internal function or another dynamically-loaded function --- or it might not. On some platforms the dynamic loader may botch the load in interesting ways if there is a conflict of C function names. So, even if it works for you today, you might regret overloading names later when you try to run the code somewhere else. - -" {} "Usage" {bold} " - -To create a simple SQL function: -" {} " -CREATE FUNCTION product_price(int4) RETURNS float8 AS - 'SELECT price FROM products where id = \$1' -LANGUAGE 'sql'; - -SELECT product_price(314) AS answer; - -answer ------- -15.25 -" {code} " - -To create a C function, calling a routine from a user-created shared library. This particular routine calculates a check digit and returns TRUE if the check digit in the function parameters is correct. It is intended for use in a CHECK contraint. -" {} " -CREATE FUNCTION ean_checkdigit(bpchar, bpchar) RETURNS bool -AS '/usr1/proj/bray/sql/funcs.so' LANGUAGE 'c'; - -CREATE TABLE product ( - id char(8) PRIMARY KEY, - eanprefix char(8) CHECK (eanprefix ~ '\[0-9\]{2}-\[0-9\]{5}') - REFERENCES brandname(ean_prefix), - eancode char(6) CHECK (eancode ~ '\[0-9\]{6}'), - CONSTRAINT ean CHECK (ean_checkdigit(eanprefix, eancode)) -); -" {code} |