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]