# External Procedure

## Overview <a href="#undefined" id="undefined"></a>

This guide is intended for database administrators (DBA) who choose to refer to tbPSM, the persistent stored module provided by Tibero® (Tibero), and application program developers.

{% hint style="info" %}
This guide does not contain all the information required to operate Tibero . For information related to installation, configuration, operation and management, refer to each relevant guide.

For more information about Tibero installation and configuration, refer to Tibero Installation Guide.
{% endhint %}

###

### Required Knowledge

* Database
* RDBMS
* SQL
* tbPSM

###

### System Requirements

<table><thead><tr><th width="171">.</th><th>Requirements</th></tr></thead><tbody><tr><td>Platform</td><td>HP-UX 11i v3(11.31)</td></tr><tr><td></td><td>Solaris (Solaris 11)</td></tr><tr><td></td><td>AIX (AIX 7.1/AIX 7.2/AIX 7.3)</td></tr><tr><td></td><td>GNU (X86, 64, IA64)</td></tr><tr><td></td><td>Red Hat Enterprise Linux 7 kernel 3.10.0 or later </td></tr><tr><td></td><td>Windows(x86) 64bit</td></tr><tr><td>Hardware</td><td>At least  2.5GB hard disk space</td></tr><tr><td></td><td>More than 1 GB RAM</td></tr><tr><td>Compiler</td><td>PSM (C99 support needed)</td></tr><tr><td></td><td>tbESQL/C (C99 support needed)</td></tr></tbody></table>

###

### Document Organization

The guide contains 8 chapters.&#x20;

<details>

<summary>Introduction to External Procedures</summary>

Describes the basic concept and the types of external procedure.

🔎 [Go to Introduction to External Procedures](https://docs.tibero.com/tibero/en/topics/development/external-procedure/introduction-to-external-procedures)

</details>

<details>

<summary>C External Procedures</summary>

Describes the features and the execution of the C external procedure.

🔎 [Go to C External Procedures](https://docs.tibero.com/tibero/en/topics/development/external-procedure/c-external-procedures)

</details>

<details>

<summary> Creating C External Procedures </summary>

Describes how to specify the basic environment variables to create C external procedures, and the actual steps to create the C external procedures.

🔎 [Go to Creating C External Procedures ](https://docs.tibero.com/tibero/en/topics/development/external-procedure/creating-c-external-procedures)

</details>

<details>

<summary>Executing C External Procedures</summary>

Describes how to map a PSM and a C parameter in C external procedure, and how to use the callback service.

🔎 [Go to Executing C External Procedures](https://docs.tibero.com/tibero/en/topics/development/external-procedure/executing-c-external-procedures)

</details>

<details>

<summary>C External Procedure Utility</summary>

Describes the C external procedure utility used to create the functions of a user shared library.

&#x20;🔎 [Go to C External Procedure Utility](https://docs.tibero.com/tibero/en/topics/development/external-procedure/c-external-procedure-utility)

</details>

<details>

<summary>Java External Procedures</summary>

Describes the basic concept, main features, and executions of the Java External Procedure.

🔎 [Go to Java External Procedures](https://docs.tibero.com/tibero/en/topics/development/external-procedure/java-external-procedures)

</details>

<details>

<summary>Creating Java External Procedures</summary>

Describes how to specify the basic environment variables to create Java external procedures, and the actual steps to create the Java external procedures.

🔎 [Go to Creating Java External Procedures ](https://docs.tibero.com/tibero/en/topics/development/external-procedure/creating-java-external-procedures)

</details>

<details>

<summary>Executing Java External Procedures</summary>

Describes how to create Java application programs using Java external procedures, and how to use the internal JDBC driver.

🔎[ Go to Executing Java External Procedures](https://docs.tibero.com/tibero/en/topics/development/external-procedure/executing-java-external-procedures)

</details>

###
