[前][次][番号順一覧][スレッド一覧]

mysql:5304

From: acute <acute <acute@xxxxxxxxxx>>
Date: Wed, 03 Apr 2002 12:49:51 +0900
Subject: [mysql 05304] Re: Access からのアップデート

こんにちは、acute!!?ともうします。

> > > 1.データ量が多いときAccessからアップデート
> > >   できないのか?。
> > > 2.このように多量のアップデートSQLを送ったとき
> > >   MySQLは処理ができなくなるのか?。 また、
> >
> ただ本質的な問題は、AccessからODBCを使って
> MySQLに接続したとき、Access側のクエリが場合に
> よって使えないことがある。

mysqlに限りませんが、AccessからODBCを使って、
他のRDBMSにアクセスする場合は、注意が必要です。

Access - odbc - MySqlでSQLをやりとりする場合、

JET-SQL(AccessネイティブのSQLの書き方)で書くと、
変換がそれぞれ2回行われ、通信エラーやタイムアウトが
発生する事象がしばしばあるようです。

Mysqlのデータだけを操作するのであれば、
DirectODBC機能により、RDBMSネイティブ
(つまりMySQLの)SQLでクエリを実行すれば、
解決する場合があります。


> この時、悪いのはAccess側がまたは、MySQL側か
> あるいは、ODBCか?。
> >   Access から CSV 形式で吐かせて、MySQL で 'LOAD DATA INFILE' 構文を
> >  使って吸い上げると速いと思います。


今回のように、Access 対 MySQL 間でデータを移動させる
用途でAccessを利用する場合には、ちょっと簡単には
行かない場合もありますね。

自分のほうで出来た方法としては、以下の方法です。

1.元データのAccessテーブルを一件ずつフェッチする。
2.フェッチした元データを使って、挿入先の
    MYSQL用のInsert 〜 values  文を作る。
3. DirectODBC機能でMySQLにSQLを発行する。
4. 1.のデータがなくなるまでループ。

    ※時間は掛りますが・・・(^^;


-- 
acute <acute@xxxxxxxxxx>


[前][次][番号順一覧][スレッド一覧]

      5300 2002-04-02 12:09 ["goudo" <goudo@xxxxx] Access からのアップデート               
      5301 2002-04-02 12:14 ┗[Tomohiro 'Tomo-p' KA]                                       
      5303 2002-04-03 11:31  ┗["goudo" <goudo@xxxxx]                                     
->    5304 2002-04-03 12:49   ┗[acute <acute@xxxxxxx]                                   
      5312 2002-04-04 15:25    ┗["goudo" <goudo@xxxxx]                                 
      5324 2002-04-05 23:47     ┗[Kohei Okuno <acute@x]