Hitachi

ノンストップデータベース HiRDB Version 10 SQLリファレンス


6.22.1 REPLACE CLIBの形式と規則

〈この項の構成〉

(1) 機能

外部Cストアドルーチンを実行するために,UAP実行マシンにある,外部Cストアドルーチンを実装した外部CライブラリファイルをHiRDBサーバに再登録します。

(2) 形式

 REPLACE CLIB {:埋込み変数|'文字列'}

(3) オペランド

(a) {:埋込み変数|'文字列'}

再登録する外部Cライブラリファイルの名称を指定します。外部Cライブラリファイルの名称は,絶対パス名又は相対パス名で指定してください。

:埋込み変数

外部Cライブラリファイルの名称をVARCHAR型の埋込み変数で指定します。

既定文字集合以外の文字集合は指定できません。

'文字列'

外部Cライブラリファイルの名称を文字列定数で指定します。

(4) 共通規則

  1. REPLACE CLIBを実行する前に,HiRDBサーバに接続しておく必要があります。

  2. エラーコードはSQLCODEに返されます。

  3. ほかのサーバマシンの外部Cライブラリファイルは指定できません。

  4. ワイルドカードは使用できません。

  5. 既に同じ名称の外部Cライブラリファイルが登録されている場合は上書きします。

  6. HiRDBサーバに外部Cライブラリファイルが登録されていない場合,外部CライブラリファイルをHiRDBサーバに登録します。

  7. REPLACE CLIBは,トランザクションの開始前に実行してください。

  8. 外部Cライブラリファイルの再登録先と同じプラットフォームで,外部Cライブラリファイルを作成してください。

  9. トランザクションの実行中は,Cライブラリファイルの再登録を行わないでください。

(5) 使用例

外部Cライブラリファイル(c:\work\sampleproc.dll)を埋込み変数で指定して再登録します。

EXEC SQL BEGIN DECLARE SECTION ;
struct {
    short  len ;
    char   str[256] ;
} filename ;
EXEC SQL END DECLARE SECTION ;
EXEC SQL CONNECT ;
strcpy(filename.str,"c:\\work\\sampleproc.dll") ;
filename.len = strlen(filename.str) ;
EXEC SQL REPLACE CLIB :filename ;