SYSCS_UTIL.SYSCS_IMPORT_TABLE_LOBS_FROM_EXTFILEシステム手続ã??を使ã?£ã?¦æƒ…å ±ã‚’è¡¨ã?«ã‚¤ãƒ³ãƒ?ートã?§ã??ã?¾ã?™ã€‚ã?“ã?®ã?¨ã??LOBã?®æƒ…å ±ã?¯åˆ¥ãƒ•ァイルã?«ç½®ã?‹ã‚Œã?¾ã?™ã€‚
主インãƒ?ートファイルã?«ã?¯ã€?LOBã?®ä½?ç½®ã?¸ã?®å?‚ç…§ã?¨ã??れ以外ã?®æƒ…å ±ã?®ã?™ã?¹ã?¦ã?Œç½®ã?‹ã‚Œã?¾ã?™ã€‚
æ§‹æ–‡
SYSCS_UTIL.SYSCS_IMPORT_TABLE_LOBS_FROM_EXTFILE (
IN SCHEMANAME VARCHAR(128),
IN TABLENAME VARCHAR(128),
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)åž‹ã?®å…¥åŠ›å€¤ã‚’å?–る引数ã?§ã?™ã€‚
- FILENAME
- インãƒ?ートã?™ã‚‹æƒ…å ±ã?®ã?‚るファイルã?®å??å‰?を指定ã?—ã?¾ã?™ã€‚パスã?Œçœ?ç•¥ã?•れã?¦ã?„ã‚‹å ´å?ˆã€?ç?¾åœ¨ã?®ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã?Œä½¿ã‚?れã?¾ã?™ã€‚ãƒ?ットワークサーãƒ?を使ã?£ã?¦ã?„ã‚‹å ´å?ˆã€?指定ã?™ã‚‹ãƒ•ァイルã?®ä½?ç½®ã?¯ã‚µãƒ¼ãƒ?å?´ã?®ä½?ç½®ã?§ã?™ã€‚NULLを指定ã?™ã‚‹ã?¨ã‚¨ãƒ©ãƒ¼ã?¨ã?ªã‚Šã?¾ã?™ã€‚FILENAMEパラメータã?¯(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ã?®æƒ…å ±ã‚’èªã?¿å‡ºã?—ã?¾ã?™ã€‚
Derby以外ã?®æƒ…å ±æº?ã?‹ã‚‰ã‚¤ãƒ³ãƒ?ートを行ã?†å ´å?ˆã€?主インãƒ?ートファイルã?«æ›¸ã?‹ã‚Œã?ŸLOBã?¸ã?®å?‚ç…§ã?®æ›¸å¼?ã?¯ã€?lobsFileName.Offset.length/ã?¨ã?—ã?¦ä¸‹ã?•ã?„。
- Offsetã?¯å¤–部ファイルã?®ä¸ã?®ä½?置をãƒ?イト数ã?§è¡¨ã?—ã?¾ã?™ã€‚
- lengthã?¯LOB列ã?®æƒ…å ±ã?®å¤§ã??ã?•ã‚’ãƒ?イト数ã?§è¡¨ã?—ã?¾ã?™ã€‚
ã?“ã?®æ‰‹ç¶šã??ã?®ä½¿ã?„æ–¹ã?«é–¢ã?™ã‚‹ã?“ã?®ã?»ã?‹ã?®æƒ…å ±ã?¯ã€?Derby ツールã?¨ãƒ¦ãƒ¼ãƒ†ã‚£ãƒªãƒ†ã‚£ãƒ¼ã‚¬ã‚¤ãƒ‰ã?®ã€Œãƒ?ルクインãƒ?ートã?¨ã‚¨ã‚¯ã‚¹ãƒ?ートã?®æ‰‹ç¶šã??を使ã?†ã€?ã‚’å?‚ç…§ã?—ã?¦ã??ã? ã?•ã?„。
LOBã?®æƒ…å ±ã?®æ›¸ã?‹ã‚Œã?Ÿå¤–部ファイルをå?‚ç…§ã?™ã‚‹ä¸»ã‚¤ãƒ³ãƒ?ートファイルã?‹ã‚‰ã€?æƒ…å ±ã‚’ã‚¤ãƒ³ãƒ?ートã?™ã‚‹ä¾‹
以下ã?®ä¾‹ã?§ã?¯ã‚µãƒ³ãƒ—ルデータベースã?«ã?‚ã‚‹STAFFã?¸ã€?staff.delã?¨ã?„ã?†ãƒ‡ãƒªãƒŸãƒˆã?•れã?Ÿãƒ‡ãƒ¼ã‚¿ãƒ•ァイルã?‹ã‚‰æƒ…å ±ã‚’ã‚¤ãƒ³ãƒ?ートã?—ã?¾ã?™ã€‚ã?“ã?®ä¾‹ã?§ã?¯ã‚³ãƒ³ãƒžã?Œåˆ—ã?®ãƒ‡ãƒªãƒŸã‚¿ã?§ã?™ã€‚æƒ…å ±ã?¯è¡¨ã?®æ—¢å˜ã?®æƒ…å ±ã?«è¿½è¨˜ã?•れã?¾ã?™ã€‚
CALL SYSCS_UTIL.SYSCS_IMPORT_TABLE_LOBS_FROM_EXTFILE(
'APP','STAFF','c:\data\staff.del',',','"','UTF-8',0);