SYSCS_UTIL.SYSCS_IMPORT_DATA_LOBS_FROM_EXTFILE システム手続ã??

SYSCS_UTIL.SYSCS_IMPORT_DATA_LOBS_FROM_EXTFILEシステム手続ã??を使ã?£ã?¦è¡¨ã?«ã?‚る列ã?«ã‚¤ãƒ³ãƒ?ートã?™ã‚‹ã?“ã?¨ã?Œã?§ã??ã?¾ã?™ã€‚ã?“ã?®ã?¨ã??LOBã?®ãƒ‡ãƒ¼ã‚¿ã?¯åˆ¥ãƒ•ァイルã?‹ã‚‰åˆ†ã?‘ã?¦ã‚¤ãƒ³ãƒ?ートã?•れã?¾ã?™ã€‚ 主ã?¨ã?ªã‚‹ã‚¤ãƒ³ãƒ?ートファイルã?«ã?¯ã€?LOBã?®æƒ…å ±ã?Œã?‚る場所ã?¸ã?®å?‚ç…§ã?¨ä»–ã?®å…¨ãƒ‡ãƒ¼ã‚¿ã?Œç½®ã?‹ã‚Œã?¾ã?™ã€‚

æ§‹æ–‡

SYSCS_UTIL.SYSCS_IMPORT_DATA_LOBS_FROM_EXTFILE (
   IN SCHEMANAME VARCHAR(128), 
   IN TABLENAME VARCHAR(128), 
   IN INSERTCOLUMNS VARCHAR(32672), 
   IN COLUMNINDEXES VARCHAR(32672),
   IN FILENAME VARCHAR(32672), 
   IN COLUMNDELIMITER CHAR(1), 
   IN CHARACTERDELIMITER CHAR(1), 
   IN CODESET VARCHAR(128), 
   IN REPLACE SMALLINT)
   )

イン�ートユーティリティ�LOB�情報��る場所���照を主��るイン�ートファイル�ら探���。

SCHEMANAME
表ã?®ã‚¹ã‚­ãƒ¼ãƒžã‚’指定ã?—ã?¾ã?™ã€‚既定ã?®ã‚¹ã‚­ãƒ¼ãƒžå??を利用ã?™ã‚‹ã?Ÿã‚?ã?«ã€?NULLã?®å€¤ã‚’指定ã?™ã‚‹ã?“ã?¨ã?Œã?§ã??ã?¾ã?™ã€‚ SCHEMANAMEパラメータã?¯ã€?VARCHAR (128)åž‹ã?®å¼•数を入力ã?«ã?¨ã‚Šã?¾ã?™ã€‚
TABLENAME
情報ã?Œã‚¤ãƒ³ãƒ?ートã?•れる表ã?®å??å‰?を指定ã?—ã?¾ã?™ã€‚ 表ã?¯ã‚·ã‚¹ãƒ†ãƒ è¡¨ã‚„一時表ã?§ã?‚ã?£ã?¦ã?¯ã?ªã‚Šã?¾ã?›ã‚“。 文字列ã?¯è¡¨å??ã?¨å¤§æ–‡å­—å°?文字ã?Œä¸€è‡´ã?—ã?¦ã?„ã?ªã?‘れã?°ã?ªã‚Šã?¾ã?›ã‚“。NULL値を指定ã?™ã‚‹ã?¨ã‚¨ãƒ©ãƒ¼ã?¨ã?ªã‚Šã?¾ã?™ã€‚ TABLENAMEパラメータã?¯ã€?VARCHAR (128)åž‹ã?®å¼•数を入力ã?«ã?¨ã‚Šã?¾ã?™ã€‚
INSERTCOLUMNS
情報ã?Œã‚¤ãƒ³ãƒ?ートã?•れる表ã?®åˆ—ã?®å??å‰?ã‚’ã€?コンマã?§åŒºåˆ‡ã?£ã?¦æŒ‡å®šã?—ã?¾ã?™ã€‚ 表ã?®å…¨åˆ—ã?¸ã‚¤ãƒ³ãƒ?ートã?™ã‚‹å ´å?ˆã€?NULL値を指定ã?™ã‚‹ã?“ã?¨ã?Œã?§ã??ã?¾ã?™ã€‚ INSERTCOLUMNSパラメータã?¯ã€?VARCHAR (32672)åž‹ã?®å¼•数を入力ã?«ã?¨ã‚Šã?¾ã?™ã€‚
COLUMNINDEXES
入力ã?•れる情報ã?®ã?†ã?¡ã€?インãƒ?ートã?•れる欄ã?®åˆ—番å?·(1ã?‹ã‚‰æ•°ã?ˆã?¾ã?™ã€‚)をコンマã?§åŒºåˆ‡ã?£ã?¦æŒ‡å®šã?—ã?¾ã?™ã€‚ ファイルã?®å…¨æ¬„を指定ã?™ã‚‹å ´å?ˆã€?NULL値を指定ã?™ã‚‹ã?“ã?¨ã‚‚ã?§ã??ã?¾ã?™ã€‚COLUMNINDEXESパラメータã?¯ã€?VARCHAR (32762)åž‹ã?®å¼•数を入力ã?«ã?¨ã‚Šã?¾ã?™ã€‚
FILENAME
インãƒ?ートã?™ã‚‹æƒ…å ±ã?®ã?‚るファイルã?®å??å‰?を指定ã?—ã?¾ã?™ã€‚パスã?Œçœ?ç•¥ã?•れã?Ÿå ´å?ˆã€?ç?¾åœ¨ã?®ä½œæ¥­ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã?Œä½¿ã‚?れã?¾ã?™ã€‚ãƒ?ットワークサーãƒ?ã?§åˆ©ç”¨ã?™ã‚‹å ´å?ˆã€?ファイルã?®ä½?ç½®ã?¯ã‚µãƒ¼ãƒ?サイドã?®ä½?置をå?‚ç…§ã?—ã?¾ã?™ã€‚ NULLを指定ã?™ã‚‹ã?¨ã‚¨ãƒ©ãƒ¼ã?«ã?ªã‚Šã?¾ã?™ã€‚ fileNameパラメータã?¯ã€?VARCHAR (32672)åž‹ã?®å¼•数を入力ã?«ã?¨ã‚Šã?¾ã?™ã€‚
COLUMNDELIMITER
列ã?®ãƒ‡ãƒªãƒŸã‚¿ã‚’指定ã?—ã?¾ã?™ã€‚指定ã?•れã?Ÿæ–‡å­—ã?¯ã‚³ãƒ³ãƒžã?®ä»£ã‚?りã?«åˆ—ã?®çµ‚ã‚?りを表ã?—ã?¾ã?™ã€‚既定値ã?®ã‚³ãƒ³ãƒžã‚’利用ã?™ã‚‹å ´å?ˆã€?NULL値を指定ã?§ã??ã?¾ã?™ã€‚ COLUMNDELIMITERパラメータã?¯ã€?CHAR (1)åž‹ã?®å¼•数を入力ã?«ã?¨ã‚Šã?¾ã?™ã€‚
CHARACTERDELIMITER
文字ã?®ãƒ‡ãƒªãƒŸã‚¿ã‚’指定ã?—ã?¾ã?™ã€‚指定ã?•れã?Ÿæ–‡å­—ã?¯äºŒé‡?引用符ã?®ä»£ã‚?りã?«åˆ—ã?®çµ‚ã‚?りを表ã?—ã?¾ã?™ã€‚既定値ã?®äºŒé‡?引用符を利用ã?™ã‚‹å ´å?ˆã€?NULL値を指定ã?§ã??ã?¾ã?™ã€‚ CHARACTERDELIMITERパラメータã?¯ã€? CHAR (1)åž‹ã?®å¼•数を入力ã?«ã?¨ã‚Šã?¾ã?™ã€‚
CODESET
入力ファイル中ã?®æƒ…å ±ã?®ã‚³ãƒ¼ãƒ‰ã‚»ãƒƒãƒˆã‚’指定ã?—ã?¾ã?™ã€‚コードセットã?®å??å‰?ã?¯Javaã?§åˆ©ç”¨å?¯èƒ½ã?ªæ–‡å­—円コーディングã?§ã?ªã?‘れã?°ã?ªã‚Šã?¾ã?›ã‚“。 情報ã?¯æŒ‡å®šã?•れã?Ÿã‚³ãƒ¼ãƒ‰ã‚»ãƒƒãƒˆã?‹ã‚‰ã€?データベースã?®ã‚³ãƒ¼ãƒ‰ã‚»ãƒƒãƒˆ(UTF-8)ã?¸ã?¨å¤‰æ?›ã?•れã?¾ã?™ã€‚ 実行ã?™ã‚‹JVMã?¨å?Œã?˜ã‚³ãƒ¼ãƒ‰ã‚»ãƒƒãƒˆã?§ãƒ‡ãƒ¼ã‚¿ãƒ•ァイルを解釈ã?™ã‚‹å ´å?ˆã€?NULL値を指定ã?™ã‚‹ã?“ã?¨ã?Œã?§ã??ã?¾ã?™ã€‚ CODESETパラメータã?¯ã€?VARCHAR (128)データ型を入力ã?«ã?¨ã‚Šã?¾ã?™ã€‚
REPLACE
ã?“ã?®ãƒ‘ラメータã?«0以外ã?®å€¤ã‚’指定ã?™ã‚‹ã?¨ã€?インãƒ?ートã?ŒREPLACEモードã?§è¡Œã‚?れã?¾ã?™ã€‚一方ã?§0を指定ã?™ã‚‹ã?¨ã€?インãƒ?ートã?¯INSERTモードã?§è¡Œã‚?れã?¾ã?™ã€‚ REPLACEモードã?§ã?¯è¡¨ã?«ã?‚る既存ã?®æƒ…å ±ã?¯ã?™ã?¹ã?¦åˆ‡ã‚Šæ?¨ã?¦ã‚‰ã‚Œã?Ÿã?®ã?¡ã€?インãƒ?ートã?—ã?Ÿæƒ…å ±ã?ŒæŒ¿å…¥ã?•れã?¾ã?™ã€‚ 表ã?®å®šç¾©ã‚„索引ã?®å®šç¾©ã?«ã?¯å¤‰æ›´ã?Œã?‚りã?¾ã?›ã‚“。表ã?Œæ—¢ã?«ã?‚ã‚‹å ´å?ˆã?®ã?¿ã€?REPLACEモードã?§æƒ…報をインãƒ?ートã?™ã‚‹ã?“ã?¨ã?Œã?§ã??ã?¾ã?™ã€‚INSERTモードã?§ã?¯æ—¢å­˜ã?®è¡¨ã?®æƒ…å ±ã?«å¤‰æ›´ã‚’加ã?ˆã?šã?«ã€?インãƒ?ートã?—ã?Ÿæƒ…報を追加ã?—ã?¾ã?™ã€‚ パラメータã?«NULL値を指定ã?™ã‚‹ã?¨ã‚¨ãƒ©ãƒ¼ã?Œç™ºç”Ÿã?—ã?¾ã?™ã€‚ REPLACEパラメータã?¯ã€?SMALLINTデータ型を入力ã?«ã?¨ã‚Šã?¾ã?™ã€‚

デリミトã?•れã?ªã?„識別å­?ã?§ã‚¹ã‚­ãƒ¼ãƒžã€?表ã€?列ã?Œä½œæˆ?ã?•れã?Ÿå ´å?ˆã€?インãƒ?ートã?®æ‰‹ç¶šã??ã?«æ¸¡ã?™å??å‰?ã?¯ã?™ã?¹ã?¦å¤§æ–‡å­—ã?§ã?ªã?‘れã?°ã?ªã‚Šã?¾ã?›ã‚“。 デリミトã?•れã?Ÿè­˜åˆ¥å­?ã?§ã‚¹ã‚­ãƒ¼ãƒžã€?表ã€?列ã?Œä½œæˆ?ã?•れã?Ÿå ´å?ˆã€?インãƒ?ートã?®æ‰‹ç¶šã??ã?«æ¸¡ã?™å??å‰?ã?¯ä½œæˆ?ã?•れã?Ÿå??å‰?ã?¨å¤§æ–‡å­—ã?¨å°?文字ã?Œä¸€è‡´ã?—ã?ªã?‘れã?°ã?ªã‚Šã?¾ã?›ã‚“。

使�方

ã?“ã?®æ‰‹ç¶šã??ã?¯ä¸»ã?¨ã?ªã‚‹ã‚¤ãƒ³ãƒ?ートファイルã?«æ›¸ã?‹ã‚Œã?Ÿå?‚照を使ã?£ã?¦ã€?LOBã?®æƒ…報を読ã?¿ã?¾ã?™ã€‚ 主ã?¨ã?ªã‚‹ã‚¤ãƒ³ãƒ?ートファイルã?«æ›¸ã?‹ã‚Œã?ŸLOBã?¸ã?®å?‚ç…§ã?¯ã€?lobsFileName.Offset.length/ã?¨ã?„ã?†æ›¸å¼?ã?«æ±ºã?¾ã?£ã?¦ã?„ã?¾ã?™ã€‚

ã?“ã?®æ‰‹ç¶šã??ã?®ä½¿ã?„æ–¹ã?«ã?¤ã?„ã?¦ã?¯ã€?Derby ツールã?¨ãƒ¦ãƒ¼ãƒ†ã‚£ãƒªãƒ†ã‚£ãƒ¼ã‚¬ã‚¤ãƒ‰ã?®ã€Œãƒ?ルクインãƒ?ートã?¨ã‚¨ã‚¯ã‚¹ãƒ?ートã?®æ‰‹ç¶šã??を使ã?†ã€?ã?®ç« ã‚‚å?‚ç…§ã?—ã?¦ã??ã? ã?•ã?„。

指定��列�データをイン�ート�る例。LOBデータ�別ファイル�らイン�ート�れる。

以下ã?®ä¾‹ã?§ã?¯ã€?STAFF表ã?®ã?„ã??ã?¤ã?‹ã?®åˆ—ã?«æƒ…報をインãƒ?ートã?™ã‚‹æ–¹æ³•を示ã?—ã?¾ã?™ã€‚ STAFF表ã?«ã?¯ã‚µãƒ³ãƒ—ルデータベースã?®LOB列ã?Œã?‚りã?¾ã?™ã€‚ インãƒ?ートファイルã?®staff.delã?¯ã€?デリミトã?•れã?Ÿãƒ‡ãƒ¼ã‚¿ãƒ•ァイルã?§ã?™ã€‚staff.delファイルã?«ã?¯ã€?LOBデータã?®æ›¸ã?‹ã‚Œã?Ÿå¤–部ファイルã?¸ã?®å?‚ç…§ã?Œæ›¸ã?‹ã‚Œã?¾ã?™ã€‚ 入力ファイルã?®æƒ…å ±ã?¯ã€?文字ã?®ãƒ‡ãƒªãƒŸã‚¿ã?ŒäºŒé‡?引用符(")ã€?列ã?®ãƒ‡ãƒªãƒŸã‚¿ã?Œã‚³ãƒ³ãƒž(')ã?¨ã?„ã?†æ›¸å¼?ã?¨ã?ªã?£ã?¦ã?„ã?¾ã?™ã€‚ インãƒ?ートã?—ã?Ÿæƒ…å ±ã?¯STAFF表ã?®æ—¢å­˜ã?®æƒ…å ±ã?«è¿½åŠ ã?•れã?¾ã?™ã€‚
CALL SYSCS_UTIL.SYSCS_IMPORT_DATA_LOBS_FROM_EXTFILE
    (null, 'STAFF', 'NAME,DEPT,SALARY,PICTURE', '2,3,4,6',
+    'c:ï¼¼dataï¼¼staff.del', ',','"','UTF-8',  0);