SQLの組み込み関数でプログラミング タスクを完了できない場合は、標準のC、C++、またはJavaプログラミング言語でユーザー定義関数を記述し、使用可能な関数のセットを拡張することもできます。
C、C++、およびJava言語によるそのファイルは、サーバーかクライアントに保存できます。 サーバーは、CREATEまたはREPLACEFUNCTIONリクエストの入力要件に必要な場合に、クライアント常駐ファイルの転送を要求します。 ソース ファイルは、現在使用されているセッション文字セットに関係なく、ASCII(ワークステーション)またはEBCDIC(メインフレーム)としてエンコードする必要があります。 クライアント常駐ファイルを使用してユーザー定義メソッド(UDM)や外部ストアド プロシージャ(XSP)を作成する場合は、同じ転送プロトコルが使用されることに注意してください。
DBS 13.10およびBTEQ 13.10以降、ファイル名の値として想定されるエンコードは、プラットフォームに対応したASCIIまたはEBCDICのシングル バイト文字セットのみではなく、セッション文字セットをベースとするようになりました。すなわち、Unicodeセッションの場合のみ、DBSまたはBTEQの一方のバージョンが13.10で他方のバージョンがこれよりも古い場合、転送プロトコルには上位互換性も下位互換性もなくなります。