- PR -

他mdbへのテーブルのコピー

1
投稿者投稿内容
マル
会議室デビュー日: 2005/12/06
投稿数: 6
投稿日時: 2006-06-08 16:25
いつもお世話になってます。
VB.NET(2002)で開発を行っています。

Access2000形式のmdbファイルのテーブルを、丸ごとAccess97形式のmdbファイルにコピーしたいのですが、ADO.NETでできないのでしょうか?
できないとしたらそれに代わる良い方法がありましたらご教授願います。
ue
ぬし
会議室デビュー日: 2005/05/07
投稿数: 581
お住まい・勤務地: 広島市
投稿日時: 2006-06-08 18:04
ADO.NET でも実現可能でしょうが、簡単なのは Access に DoCmd.TransferDatabase させることだと思います。

*Access 2000 から Access 97 へデータベースオブジェクトを転送できるのか確認していません。
Access
ぬし
会議室デビュー日: 2002/04/08
投稿数: 829
投稿日時: 2006-06-09 06:31
引用:

Access2000形式のmdbファイルのテーブルを、丸ごとAccess97形式のmdbファイルにコピーしたいのですが、ADO.NETでできないのでしょうか?


Access 2000からAccess 97への移行ですと、
CSV形式でエクスポート/インポートするしかないのでは?
_________________
ASP.NET+Ajaxサンプル集 | JavaScript+Ajaxサンプル集
マル
会議室デビュー日: 2005/12/06
投稿数: 6
投稿日時: 2006-06-09 10:52
Access様、ue様、ご回答ありがとうございます。

いろいろ試してみました結果、
「AAA.mdb」ファイルの「Table1」を「C:\TEST\BBB.mdb」ファイルへコピーする場合、

SELECT * INTO [;Database=C:\TEST\BBB.mdb].[コピー〜Table1] FROM Tabele1

のSQL文をAAA.mdbファイルに発行することで実現できました。

ご協力ありがとうございました。
R・田中一郎
ぬし
会議室デビュー日: 2005/11/03
投稿数: 979
投稿日時: 2006-06-09 15:07
引用:

マルさんの書き込み (2006-06-09 10:52) より:

SELECT * INTO [;Database=C:TESTBBB.mdb].[コピー〜Table1] FROM Tabele1


これだとインデックスの情報がコピーされないような気がしますが。
マル
会議室デビュー日: 2005/12/06
投稿数: 6
投稿日時: 2006-06-13 10:09
R・田中一郎様、ご返答ありがとうございます。

失念していました…
主キーの設定だけでなく、空文字列の許可や値要求までコピーできないんですね。
VB側だけで処理する場合は、そこの再設定も必要になるということですか。

今回はコピー先のデータベース内の他テーブルと連結させることが目的で、
データ更新といったことはないので当面はかまわないのですが、
今後の対処の参考として、他に何か方法がありましたらよろしくお願いします。
R・田中一郎
ぬし
会議室デビュー日: 2005/11/03
投稿数: 979
投稿日時: 2006-06-13 10:26
引用:

マルさんの書き込み (2006-06-13 10:09) より:

今回はコピー先のデータベース内の他テーブルと連結させることが目的で、
データ更新といったことはないので当面はかまわないのですが、
今後の対処の参考として、他に何か方法がありましたらよろしくお願いします。


あくまでもADO.NET でできないと駄目なんですよね?^^;
Accessなりでデータの変換しちゃうのが早い気がしますが、何故ダウングレードさせるんでしょう?
Access97形式って大量のレコード数扱えないし、後々大変そうですが・・・
マル
会議室デビュー日: 2005/12/06
投稿数: 6
投稿日時: 2006-06-13 11:51
引用:

R・田中一郎さんの書き込み (2006-06-13 10:26) より:

あくまでもADO.NET でできないと駄目なんですよね?^^;
Accessなりでデータの変換しちゃうのが早い気がしますが、何故ダウングレードさせるんでしょう?
Access97形式って大量のレコード数扱えないし、後々大変そうですが・・・



先に開発されたソフトの応用開発で、そちらのデータベースがAccsess97だったんです。
こちらのほうはAccessデータベースの拡張子を変更させたりと色々していて、
私は関わりがなかったので仕様もいい加減だったりで極力いじりたくないんです。
基本的にAccessも入れないで配布するのでADO.NETでないとダメなんです...

普通にアップグレード開発の方が楽なんですけどね(-_-;)


[ メッセージ編集済み 編集者: マル 編集日時 2006-06-13 11:52 ]
1

スキルアップ/キャリアアップ(JOB@IT)