[pgsql-jp: 29633] Re: ODBC経由でのMS-Access からPostgreSQLへのデータ移行

岩瀬 肇 iwase-h @ mxy.nes.nec.co.jp
2003年 4月 14日 (月) 16:33:31 JST


ご返信ありがとうございます。

> こんにちは。
> 
> > 6.テーブルのリンク一覧にテーブルが表示されていて、リンクが確立できて
> >  いることを確認し、MS-Access上のテーブルを選択し、
> >  右クリックメニューからエクスポートを選択。
> 
> ここの意味が良くわからないのですが、PostgreSQLのテーブルをリンクしてから
> Accessのテーブルをエクスポートしているという事でしょうか?
> 
> Accessのテーブルを直接PosetgreSQLにエクスポートするのに
> 一旦PostgreSQLのテーブルをリンクする意味がわからないです。

ここは、ODBC経由でテーブルとリンクできるかの確認を行っているだけです。
その後、改めてエクスポート処理を行っています。
わかりにくい書き方で申し訳有りませんでした。


> 私もAccessのテーブルをPostgreSQLに置き換えた事がありますが
> 直接エクスポートはしませんでした。
> (そんな事ができるとは考えてなかっただけなんですが・・・汗)
> 
> > 9.もう一度同じことを行うと、
> >  「情報データ型が有効範囲にありません。(#0)」と出力
> >  されてエラーになってしまいます。
> ・・・
> > MS-AccessとPostgreSQLの型の対応は以下のようになっていると思っているのですが、
> > 認識あっていますでしょうか?よろしくご教示ください。
> > オートナンバー(長整数型)  int
> > テキスト型(フィールドサイズ10)  varchar(10)
> > 数値型(整数型)  int2
> > 数値型(倍精度浮動小数点型)  float8
> > 日付/時刻型(日付(S))  date
> 
> 少なくともDate型の日付の形式が違ってると思います。
> PostgreSQLでは
> YYYY-MM-DD・・・のような形式になりますが
> AccessではYYYY/MM/DDのような形になってるのではないでしょうか。
> そこがうまく変換されるものか微妙な気がします。
> テストしてないのでわかりませんが。。。

本当だ…う〜ん、、、この辺も修正しなくてはならないようですね。。。


> エクスポートをするよりも、PostgreSQLからリンクしたテーブルに
> 正しい形に修正したデータで追加クエリーをかけた方が楽かもしれません。
> ご質問の参考になってなくてすみません。。

すいません、ちょっとわからないのですが、PostgreSQL側にODBCを
インストールしてPostgreSQL側から繋いで取り込んだ方が楽だと
いうことでしょうか?


> ちなみに、私の場合は、Accessと同じようなテーブルをPostgreSQLに
> 作成する為に、DAO使ってテーブルオブジェクトを参照し、
> CREATE TABLE文をテキストに吐き出し、CHECK制約や型や権限などを、
> 追加修正してからPostgreSQLへ流すという作業をしました。

勉強不足ですいません。こちらも教えてください。
DAOを使ってCREATE文をテキストにはき出す方法をよく知らないのですが、
何か参考になるページがあればお教え願えないでしょうか?

PostgreSQLもAccessもODBCもちゃんと理解していないため、
質問の連続になってしまうかもしれませんが、よろしくお願いいたします。

> ----------------------------
> Chie.M <gontakun @ fish.co.jp>

-- 
岩瀬 肇 <iwase-h @ mxy.nes.nec.co.jp>




pgsql-jp メーリングリストの案内