1
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

Accessで別のAccessファイルからインポート定義を移管

Last updated at Posted at 2023-10-31

概要

image.png

よくないデプロイ例

例えば、テスト環境のAccessでcsvインポート定義を作ってテストしても…

本番環境へのデプロイ時に、本番環境のAccessで下記のような画面を出して…
image.png

インポート定義を改めて作っていることがあったりします。
image.png

これではデプロイ時にプログラミングしていることになります。

下記画面で設定ミスや入力ミスも考えられます。
image.png

このような本番環境で改めて作るようなやり方だと テスト環境でインポート定義を作ってテストしている意味が無くなってしまいます

テスト環境作ったインポート定義をそのまま本番に移したい!

やり方

システムオブジェクトの表示

移管元と移管先の両方でやっておきます。

『ナビゲーションオプション』。
image.png
『システムオブジェクトの表示』にチェック入れる。
image.png

『MSysIMEXSpecs』『MSysIMEXColumns』テーブルにインポート定義の情報が入っています。
つまり、この2テーブルのレコードを丸ごと差し替えてあげることで定義の移管ができます。

image.png

移管先のレコード全削除

image.png

image.png

移管元から移管先へレコード移す

移管元から移管先へ2テーブルをドラッグドロップ。
image.png

image.png

image.png

補足

『テーブル構造とデータ』だと下記のような例外になります。
image.png
なので、事前に移管先のレコードを全削除しておいて、『既存のテーブルにデータを追加』を行っています。

システムオブジェクト非表示に

やり方は『システムオブジェクトの表示』の逆をすればよいので省略。

新しいデータソース経由の移管だと失敗することがある

下記のようにやり方もありますが…

image.png

image.png

image.png

このような例外になってしまうことがあります。
image.png

なのでこの記事ではシステムオブジェクトテーブルのレコード移管の方法を載せています。

参考サイトさん

バージョン

Microsoft Windows [Version 10.0.19045.3636]
Microsoft Access for Microsoft 365 MSO (バージョン 2310 ビルド 16.0.16924.20054) 32 ビット

1
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?