DOBON.NET DOBON.NETプログラミング掲示板過去ログ

mdbファイルのテーブルデータをSQLサーバーにコピー

環境/言語:[Windows2003Server,VB.NET]
分類:[.NET]

はじめまして!
今、プログラムを作成しているのですがどうしてもわからないことがありまして・・・
mdbファイルにあるテーブルをSQLサーバーにコピーしたいのですが、どうしたらいいのか検討もつかなくて困っています(*_*)
初心者で申し訳ないのですが、どなたかご教授よろしくお願いします!
■No2091に返信(みかんさんの記事)

プログラムで、日常の業務として転送を使用する、とかではなくて、
システムのDBをAccessMDBからSQLServerへ移行する、という意味であれば・・・

(そうなるとあまり.NET云々ではないので、答えるのもどうなのか、と思いますが、)


以下は、Access2000で行う場合です。
 (うちにはSQLServerがなくMSDEしかないので。
  SQLServerだと色々方法があるのかもしれませんが、貧乏なので。)


元のMDBを開いて、
 「データベースユーティリティ」−>「アップサイジングウィザード」
 を開始すると、ウィザード形式で簡単に移行できます。

 新しくデータベースを作るか、既存のデータベース内にマージするか
 選択肢が出ますので、どちらかを選択します。
 (※新規を選ぶと、SQL認証か信頼接続か選べません。)
  既存の場合、DSNの選択・作成画面になります。
  接続先を選択し、進んでください。
   作る場合は、ドライバは、一番下にある「SQLserver」を選択して作ります。

 あとは、左右にリストが表示されるので、移行したいテーブルを左側から選んで、
 右側(SQLServer)へ送ります。


※新規でうまくいかない場合、SQLServer上で「データベース」だけは作ってから、
 既存を選択してください。

 それでもうまくいかない場合、MDBを開くのではなく、
 Accessで「新規作成」−>「プロジェクト(既存のデータベース)」で、
 自分が先ほど作ったデータベースへの接続をするADPを作成し、
 「ファイル」−>「外部データの取り込み」−>「インポート」で
 元になるMDBファイルを選択すれば似たようなウィザード型の操作を行えます。

 (Access2000はSQLServer2000に正式に対応していないので文句は出ますが、
 作成はできています。)
■No2091に返信(みかんさんの記事)
> 今、プログラムを作成しているのですがどうしてもわからないことがありまして・・・
> mdbファイルにあるテーブルをSQLサーバーにコピーしたいのですが、どうしたらいいのか検討もつかなくて困っています(*_*)

乱暴な回答かもしれませんが・・・
単純にMDBデータをSQLサーバに入れるだけであれば、SQLサーバの
「データのインポートとエクスポート」で良いのでは??
PGを作成しなくとも、すんなり入ると思いますよ。

ほかには、ODBCでSQLサーバに接続し、ACCESSのテーブルに”リンクテーブル”を作成。
後はINSERTで”レッツらゴー”です。

#的外れでしたら、ご勘弁を・・・
> 乱暴な回答かもしれませんが・・・
確か、SQL Server側からもOLEDB経由でリモート接続できたはず。

DOBON.NET | プログラミング道 | プログラミング掲示板