- 締切済み
テーブルAにテーブルBのレコードをすべて追加
いつもお世話になっております。 現在、テーブルAとテーブルB(エクセルのリンクテーブル)の2つのテーブルがあり、テーブルBのレコードをすべてテーブルAに追加するという追加クエリを作りました。 が、「0件が追加されました。」とメッセージが出てしまい、実際に追加することができません。 フィールド:国番号 テーブル:テーブルB 並べ替え: レコードの追加:テーブルA.国 抽出条件: 条件は以上のようなものを、各カラムについて書きました。 テーブルAとテーブルBが逆かな?と思い逆にもしてみましたが、同じ結果となりました。 そもそも追加クエリというのは、このような目的で使うものではないのでしょうか? どなたかご教授願います。 以上、よろしくお願いいたします。
- みんなの回答 (1)
- 専門家の回答
みんなの回答
- DexMachina
- ベストアンサー率73% (1287/1744)
> フィールド:国番号 > テーブル:テーブルB > レコードの追加:テーブルA.国 とのことなので、恐らくExcelの「国」列には、Access(ですよね?)の「国番号」に 相当する数字が入っているものと推測しますが、これがAccess上で文字列と して認識されている、ということはないでしょうか? (テーブルAの「国」のデータ型が数値型だったとして、ですが) 試しに、 A)テーブルAの「国」のデータ型を文字列型にしてみる B)追加クエリの設定を、 フィールド:「国番号:CLng([テーブルB].[国番号])」 テーブル:(空欄にします) にしてみる (CLng関数は、数値に変換可能な文字列を長整数型の数値に変換する関数) のどちらかを行ってみて、それでデータが追加されるようなら、上記の通りの 原因と確定できるのではないかと思います。 なお、当然ながら、お薦めなのは、データベースの構造変更を伴わないで済む 「B」の方法です。