プロが教えるわが家の防犯対策術!

CSVファイルの中に読み飛ばしたいアイテムがるのですがそういって方法ってありますか?

例)CSVデータの2個目(ZZX,ZZW)を読み飛ばす

----- XXXXXX.ctl -----
XXXX_CD char,
XXXX_NM char

----- XXXXXX.csv -----
0001,ZZX,商品名1
0002,ZZW,商品名2

可能か不可能かだけでも教えて下さい。

A 回答 (2件)

こんにちわ。


#1 のmuyoshid です。

すみません。
私も質問の内容を読み違えたようで。

一つ確認させて下さい。
データファイルって、固定長でスキップさせる項目の位置が決まっていますか?
位置が決まっているようであれば、制御ファイルのPOSITION句で対応できると
思います。
POSITION句については、先ほどのマニュアルの「データフィールドの位置指定」
をご確認下さい。

データ長が可変でカンマ等で区切られている場合は難しいと思います。
取りあえず、ダミーのフィールドに読み込んで、後からAlter table で
列を削除するか、ダミーの表に全項目読み込んでそこから不要な項目を
削除した形でデータ移行 (View でも可) をされてはいかがでしょうか?
    • good
    • 0
この回答へのお礼

やっぱりそうですか?データが固定長なら読み飛ばしが可能なのは、マニュアル(POSITION)で出来るのは判ったんですが、可変長はダメみたいですね。色々とアドバイスありがとうございました。

PS:「muyoshidさん」には、今回も前回も大変お世話になってます。また、SQL*Loaderの質問をした時は宜しくお願いします。

お礼日時:2002/11/22 17:26

こんにちわ。



SQL*Loader で読み込むデータを選択するとのことですが、
制御ファイルのWHEN 句を使用すれば可能だと思います。
詳細は、「Oracle8i ユーティリティガイド 第(2)部 第5章」
「SQL*Loader 制御ファイル・リファレンス」内の
「表への論理レコードのロード」に
「ロードする行の選択」と言う項目に記載されています。

この回答への補足

質問のしかたが悪かったです。
このレコードをスキップするのでなく2つ目のアイテムだけを読み飛ばしたいのですが?

補足日時:2002/11/22 16:13
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

関連するカテゴリからQ&Aを探す