教えて! goo のコンテンツに対する取り組みについて

こんにちは。loooserと申します。

Accessでアプリケーションを作ろうとしているのですが、テーブルからテーブルにデータをコピーする方法が分かりません。

テーブル1には
name
price
comment
というフィールドがあり、
テーブル1'には
no
name
price
comment
flag
という5つのフィールドがあるとして、
テーブル1の3つのフィールドをテーブル2に移動したいと考えています。

他にもテーブルが複数あり、フィールド数は固定でないのです。

列数を取得してループするという感じだと思うのですが、全く知識がなく、お知恵をお借りできればと思っております。参考URLなどでも結構ですので、どうかお願いします。

gooドクター

A 回答 (2件)

>テーブルが不定期で増え・・・それを一括で処理できないものか


不定期で増えるものに対して一括でというのは無理なのではないでしょうか。不定期で増えるテーブルの把握はどのように行うのですか?

>既に移行先テーブル自体はあり中の列数が違う。またテーブル数は変動という条件
既にある移行先テーブルの列数の差は問題ありません。
しかしテーブル数は変動という意味がイマイチ判りません。移行先のテーブルで同じフィールド内容のテーブルが複数あるという事なのでしょうか?

追加クエリを作るか下記のSQLでテーブル1からテーブル2へ3つのフィールドのレコードを追加できます。

INSERT INTO テーブル2 ( name, price, comment )
SELECT テーブル1.name, テーブル1.price, テーブル1.comment
FROM テーブル1;

複数あるテーブルに追加していく簡単な方法として移行先の各テーブルの追加クエリを作りマクロに設定しておきマクロを実行して一括に各追加クエリを処理させる。新たに増えた移行先テーブルはその都度追加クエリを作りそのマクロに追加設定していく。

質問の内容と違うようでしたらゴメンなさい。
    • good
    • 0

VBAで構築するのも手ですが、「追加クエリー」を使えば簡単に出来ます。


下記URLを参考にして下さい。(ACCESS97での例ですが、他のバージョンでもほぼ同じです。)

参考URL:http://www.mahoutsukaino.com/ac/ac97/basic/a_que …
    • good
    • 0
この回答へのお礼

こんにちは。
ありがとうございます。追加クエリという方法があるのですね。
しかし、テーブルが不定期で増え、またそれを一括で処理できないものかと思いましたので、出来ませんでした。これだと、毎回追加クエリを発行しないといけないですよね?
「元のテーブルの、最前列と最後列に1列ずつ列が追加されるようなテーブルで、既に移行先テーブル自体はあり、中の列数が違う。また、テーブル数は変動」という条件なのです。
移行先テーブルを新たに作るというようなほうがいいのでしょうか?

お礼日時:2005/11/29 01:24

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人はこんなQ&Aも見ています

gooドクター

関連するカテゴリからQ&Aを探す


このQ&Aを見た人がよく見るQ&A

人気Q&Aランキング