SYSEXTERNENV system view

Many external runtime environments are supported, including embedded SQL and ODBC applications written in C/C++, and applications written in Java, Perl, PHP, or languages such as C# and Visual Basic that are based on the Microsoft .NET Framework Common Language Runtime (CLR).

Each row in the SYSEXTERNENV system view describes the information needed to identify and launch each of the external environments. The underlying system table for this view is ISYSEXTERNENV.

Column name Data type Description
object_id UNSIGNED BIGINT A unique identifier for the external environment.
name CHAR(128) This column identifies the name of the external environment or language. It is one of java, perl, php, clr, c_esql32, c_esql64, c_odbc32, or c_odbc64.
scope CHAR(1)

This column is either C for CONNECTION or D for DATABASE respectively. The scope column identifies if the external environment is launched as one-per-connection or one-per-database.

For one-per-connection external environments (like PERL, PHP, C_ESQL32, C_ESQL64, C_ODBC32, and C_ODBC64), there is one instance of the external environment for each connection using the external environment. For a one-per-connection, the external environment terminates when the connection terminates.

For one-per-database external environments (like JAVA and CLR), there is one instance of the external environment for each database using the external environment. The one-per-database external environment terminates when the database is stopped.

support_result_sets CHAR(1) This column identifies those external environments that can return result sets. All external environments can return result sets except PERL and PHP.
location LONG VARCHAR This column identifies the location on the database server computer where the executable/binary for the external environment can be found. It includes the executable/binary name. This path can either be fully qualified or relative. If the path is relative, then the executable/binary must be in a location where the database server can find it.
options LONG VARCHAR This column identifies any options required on the command line to launch the executable associated with the external environment. You should not modify this column.
user_id UNSIGNED INT When the external environment is initially launched, it must make a connection back to the database to set things up for the external environment's usage. By default, this connection is made using the DBA user ID, but if the database administrator prefers to have the external environment use a different user ID with MANAGE ANY EXTERNAL OBJECT system privilege, then the user_id column would indicate that different user ID instead. Typically, this column is NULL and the database server, by default, uses the DBA user ID.

Constraints on underlying system table

PRIMARY KEY (object_id)
FOREIGN KEY (object_id) REFERENCES SYS.ISYSOBJECT (object_id) MATCH UNIQUE FULL
FOREIGN KEY (user_id) REFERENCES SYS.ISYSUSER (user_id)
UNIQUE INDEX (name)