[リストへもどる]   [VBレスキュー(花ちゃん)]
一括表示

投稿時間:2005/11/10(Thu) 21:35
投稿者名:toMoya
Eメール:
URL :
タイトル:
CSVファイルをデータベースへ登録
CSVファイルに3000行(レコード)のデータがあります。
このデータをデータベースへINSERTしたいと考えております。

普通にやれば、3000回INSERT文を発行すれば完了すると思います。
しかし、ネットワークやデータベースへの負荷を考えますと
他に登録する方法がないかな?と思い掲示板へ質問いたしました。

何か有効な方法がありましたらご教授をお願い致します。

CSVファイル:カンマ区切りで約3000行
DataBase:Oracle 10g (OS Windows2003 Server)
開発環境:VB6.0 sp6  (OS WindowsXP sp2)

投稿時間:2005/11/10(Thu) 21:46
投稿者名:マヨ
Eメール:
URL :
タイトル:
Re: CSVファイルをデータベースへ登録
Oracleに付属のSQL*Loaderというツールはご存知でしょうか?
この辺を参考にしてみてください。

hhttp://www.atmarkit.co.jp/fdb/rensai/excel2oracle01/excel2oracle01_1.html

投稿時間:2005/11/10(Thu) 21:50
投稿者名:toMoya
Eメール:
URL :
タイトル:
Re^2: CSVファイルをデータベースへ登録
マヨ様

ご教授して頂き有難う御座いました。
早速、試してみたいと思います。

投稿時間:2005/11/10(Thu) 22:17
投稿者名:toMoya
Eメール:
URL :
タイトル:
Re^2: CSVファイルをデータベースへ登録
データベース(Oracle 10g)のテーブルAに3000件のデータが登録されているとします。

そこへ、テーブルAと同じキーを持っているCSVファイル(3000レコード)があるとします。
テーブルAをCSVファイルで更新したい場合、どのような方法があるのでしょうか?

やはり、3000回UPDATE文を発行することが望ましいのでしょうか?
また、テーブルAのデータを全て削除しSQL*Loaderを使用したほうがよいのでしょうか?

投稿時間:2005/11/11(Fri) 00:46
投稿者名:マヨ
Eメール:
URL :
タイトル:
Re^3: CSVファイルをデータベースへ登録
実際のケースでは外部ファイルを取り込んで処理する場合は一旦取込み用のワークテーブルを用意
してそこへロード(削除後、追加)するのが一般的だと思います。
その後、データをどう処理するかは要件や稼動形態によりますので仕様の決定権のある方に決めて
もらいましょう。

投稿時間:2005/11/11(Fri) 09:02
投稿者名:toMoya
Eメール:
URL :
タイトル:
Re^4: CSVファイルをデータベースへ登録
マヨ様

ご指導、有難う御座いました。
非常に勉強になりました。

投稿時間:2005/11/16(Wed) 12:19
投稿者名:めぐ
Eメール:
URL :
タイトル:
SQL*Loaderについて
SQL*Loaderについて、質問があります。

SQL*Loaderを使用しテーブル(例 TEST_INFO)へ
データを追加したいと考えています。
その際、TEST_INFOへ主キーが設定されていると
登録できない現象が起きています。

SQL*Loaderは、主キーが設定されているテーブルへの
追加はできないのでしょうか?
それともCTLファイルの設定が間違っているのでしょうか?
ご教授をお願い致します。

=CTLファイルの内容 =
LOAD DATA
INFILE 'infile.csv'
INTO TABLE TEST_INFO
APPEND
FIELDS TERMINATED BY ',' trailing nullcols
(aaa_cd, -- ←主キー
aaa_name
)

投稿時間:2005/11/16(Wed) 13:02
投稿者名:いな
Eメール:
URL :http://,
タイトル:
Re: SQL*Loaderについて
> SQL*Loaderについて、質問があります。

新規質問は、別スレッドにしてこの投稿は削除されては?

-削除キー:1234-