- - PR -
ローカルMDBへの最速の書き込み方式
投稿者 | 投稿内容 | ||||
---|---|---|---|---|---|
|
投稿日時: 2004-12-16 11:59
何時も参考にさせて頂いております。
■環境 VB.NET 2003 ACCESS 2003 WindowsXP 現在、オラクルデータをローカルMDBにダウンロードする方法を検証して おりますが、MDBへの書き込み処理が遅くて困っております。 クライアントCPU:2400(Pentium4)メモリ:512 書き込み(秒) 12000件 10 70000件 60 という結果で、秒あたり約1200件の書き込みしかできません. オラクルから取得したデータオブジェクトをループしながらADO.NETのAddNewメソッドで 書き込みを行っているのですが、他によい方法ありませんでしょうか? | ||||
|
投稿日時: 2004-12-16 13:04
INSERT SELECTでテーブルに挿入する方法があります。
| ||||
|
投稿日時: 2004-12-16 14:13
未記入様
さっそくのご返答ありがとうございます. INSERTとSELECTで可能との事ですが、「ORACLEからのSELECT」で「ACCESSへのINSERT」であるので、できないのではと思いますが. | ||||
|
投稿日時: 2004-12-16 14:18
CSVファイル経由でエクスポート/インポートするとか。
http://momotchi.net/ConFile/qry000001.aspx > INSERT SELECTでテーブルに挿入する方法があります。 同一データベース内ならいいけど、oracleからMDBは出来るのでしょうか? | ||||
|
投稿日時: 2004-12-16 15:11
Access なんて、ほとんど触ったことがないので適当な事を言いますが、リンクテーブルだかなんだかを使って Oracle のテーブルをマッピングすることができませんでしたっけ? | ||||
|
投稿日時: 2004-12-16 15:23
> 「ORACLEからのSELECT」で「ACCESSへのINSERT」であるので、
> できないのではと思いますが できませんでしたか。 できると思うけど。 _________________ たつごろー codeseek こみゅぷらす | ||||
|
投稿日時: 2004-12-16 15:39
レスポンスが上がるかどうかは...やってみないと何とも言えませんが...
OracleのテーブルをAccessのMDBにリンク(ODBC他)すると、Accessのテーブル として扱えますから、新規テーブルなら「Select〜into〜」、既存テーブルなら 「Insert Into 〜 Select 〜」でインポートできます。 | ||||
|
投稿日時: 2004-12-16 15:44
皆さんさっそくのご返答ありがとうございます.
リンクは私も考えたのですが、今回の環境上クライアントにはアクセスがインストール されていないので、リンク等の機能でオラクルに接続という事はしたくないと考えています. という事で、プログラム上でデータオブジェクトをオラクルから作成して、それをADO.NET等でループしながら書き込むという方法を考えています。 ループ等をしないで効率よく書き込む方法ないもんでしょうか? |