Package Name Clause
The Package Name clause specifies an explicit path to a package file that is to be used for this external procedure definition. Packages are libraries that can contain external procedure C or C++ functions and other functions to be called by an external procedure.
A typical package includes a function library as well as a script that contains all the necessary SQL DDL and DCL statements to create the procedures and make them available to users.
A package is a shared object file with a .so extension for Linux systems.
Package files must be distributed to all server nodes.
You cannot specify the package option with any other encoded path string clause, but you can specify it with a procedure entry point name string (see “EXTERNAL NAME Clause” on page 276).
To distribute a third party package to a Teradata Database node, use their documented installation procedure. If you are installing a package developed by your programming staff, you can use either of the following general procedures.
The syntax for this clause is as follows.
The character ¡ represents a user‑defined delimiter.
If the package supports SQL calls, then you must specify the name of the API that is to handle those calls in addition to specifying an appropriate SQL Data Access option.
Perform the following procedure for specifying a package file name string.
1 Begin the clause with the character S to indicate this is a server specification.
2 Type the character P to indicate this is a package file specification.
3 Specify an arbitrary delimiter character to separate the P code and the package name specified in the string.
4 Specify the path and name assigned to the package file on the server.
The package file extension must be .so for Linux systems.
The path must name a package or API that is already installed on the system and that has been distributed to all its nodes. Its maximum length is 256 characters.
All names on server must be unique among the UDFs, table UDFs, and external procedures created within the same database. If the CREATE/REPLACE PROCEDURE definition includes a non‑unique name_on_server specification, the system does not create it.
You can use either
/ characters to specify the path for all platforms.