• ベストアンサー

Access2000の追加クエリ(INSERT句)について

Access2000で作成したmdbファイルAから他のmdbファイルBにあるテーブルデータを取得して、mdbファイルAのテーブルにこのデータを追加する構文として、 DoCmd.RunSQL "INSERT INTO テーブル1 SELECT * FROM テーブル2 IN ""Z:\mdbファイルB.mdb""", -1 を記述して使用していますが、mdbファイルB.mdbにデータベースパスワードを設定すると、「実行時エラー・パスワードが正しくありません」のエラーが発生します。 接続先のmdbファイルBにパスワードを設定した状態で使用したいのですが、何かよい解決策はないでしょうか? なお、上記のとおりパスワードを設定した状態でテーブルにデータを追加できさえすればどんな方法でもかまいませんのでご教授願えないでしょうか。 よろしくお願いします。

質問者が選んだベストアンサー

  • ベストアンサー
noname#89342
noname#89342
回答No.2

Access97でテストしたのですが、 SELECT * from テーブル2 in '' [ms access;database=Z:\mdbファイルB.mdb;PWD=password] で持って来れました。試してみてください。

momo-chan
質問者

お礼

無事解決することができました。 私はこのことで3日間色々試してみて結局自分では解決できませんでした。 本当にありがとうございました。

その他の回答 (1)

  • TMINET
  • ベストアンサー率32% (45/140)
回答No.1

AからBにテーブルのリンクを張ってその時に一度だけパスワードを入力すれば、以後AからBのテーブルを開くことは可能です。 そうするとMDBの名前を指定してINSERTする必要も無くなると思うのですが。

momo-chan
質問者

お礼

回答ありがとうございました。

関連するQ&A

  • ACCESS 追加クエリ

    二つのテーブルがあります。テーブルAには10個のデータ(A-J)、Bには5個のデータ(A-E)が記載されています。 BにはないAのデータ(F,G,H,I,J)をBに追加するクエリを作りましたが、『出力先’DATA'が重複しています。』というエラーが出ます。 二つのテーブルの差分を取っているためこのようなことになるのですが、回避する方法を教えてください。 クエリ INSERT INTO テーブルB ( DATA_B, DATA_B ) SELECT [テーブルA].DATA_A, [テーブルB].DATA_B FROM テーブルA LEFT JOIN テーブルB ON [テーブルA].[DATA_A] = [テーブルB].[DATA_B] WHERE ((([テーブルB].DATA_B) Is Null));

  • Access パスワード付きDBへの接続について

    お世話になります。 アクセスについて行き詰まりましたので質問をさせて下さい。 現在、Access2000にて開発を行っております。 フォームやクエリのみのファイル(A.mdb)と、DBのパスワード設定がされているファイル(B.mdb)があり、B.mdbはA.mdbのリンクテーブルとなっています。 A.mdbにはフォームが複数あり、フォームA上のボタンを押下するとDoCmd.Openform命令にてフォームBが立ち上がります。 フォームBではレコードソース(SELECT文)が設定されており、データが画面の各項目に表示された状態でフォームBが立ち上がる動きとなっています。 ここで問題なのですが、DBにパスワードが設定されているため、フォームBのレコードソースのSQL文が実行された時に「パスワードが正しくありません」というエラーが発生しフォームBを立ち上げることが出来ません。 フォームBのOpenイベントにDBへ接続するプログラム(OpenDatabase命令で4つ目の引数にパスワードを設定)を入れましたがエラーは変わりませんでした。 解決策をどなたかご存知でしたら、ご教授いただきたいと思います。 以上、よろしくお願い致します。

  • Access2003VBA リンクテーブル(パスワード付き)を作成するには?

    Cドライブ直下に、A.mdbとB.mdbがあります。 また、B.mdbには、『テーブルX』があります。 A.mdbに、B.mdbの『テーブルX』をリンクさせたいのですが、 b.mdbは、パスワードで保護されています。 以下のコードは、b.mdbに、パスワードの設定が無い場合、使用可能ですが、b.mdbに、パスワードの設定がある場合、どうすればよいのでしょうか?色々ネットで検索したのですが、出てきません。>< 急ぎなので、すみませんが、教えていただけませんでしょうか。 DoCmd.TransferDatabase acLink, "Microsoft Access", "C:\B.mdb", acTable, "テーブルX", "テーブルX", False

  • アクセスVBA 追加クエリ

    下記クエリが一つあります。 [Q_商品] ID 商品名 価格 色 サイズ 重さ 送料 備考 [Q_商品]から、[T_テスト]をテーブルの作成から作りました。 [T_テスト]は、毎回利用する時に、すべてデリートして、[Q_商品]のデータを追加したいです。 [T_テスト]のデータの、すべてデリートは下記VBAでできました。 Private Sub コマンド40_Click() 'システムメッセージの非表示 DoCmd.SetWarnings False DoCmd.RunSQL "DELETE FROM T_テスト" 'システムメッセージの表示 DoCmd.SetWarnings True End Sub [Q_商品]のデータを追加するVBAを教えて下さい。 よろしくお願い致します。

  • Accessの追加クエリのエラーについて

    Accessについて教えてください。 データベースを作成しているのですが複数でデータを閲覧したり情報を入れようとするためA(データ保存ファイル)とB(メニューファイル)の2つを作成しました。Aはデータを保存するテーブルのみでBにはAのテーブルをリンクさせているものとデータを一時保存するテーブルがあります。 Bのデータ一時保存テーブルに一旦データを入れ、その後、追加クエリを実行しAのテーブルに反映させ、削除クエリで不要になったBのテーブルデータを削除していますが、追加クエリが上手く動いていないようです。 テキスト型、日付型等のフィールドは追加されるのですがメモ型フィールドに入れていたデータは削除されてAのテーブルに追加される時があります。(削除クエリはきちんと実行されています。) 私が行う限りは上記のような事象はありませんが、すでに何件か発生しているようです。 その時に表示されるメッセージは『???に失敗しました』と出ていたそうです。 何か思い当たる原因をご存知の方がいっらしゃいましたら教えてください。(上手く説明できてなくて申し訳ありません。) ちなみにAはNWサーバー、Bはローカルサーバーに保存しています。

  • Accessのインポートについて

    A.MDBの「まとめテーブル」にB.MDBの「テーブル1」とC.MDBの「テーブル2」を追加したいのです。 Insert Into を使ったら良さそうなのですが、記述がよく分かりません。 プログラムはA.MDB側で記述したいのですが…。 お願いいたします

  • accessでcommitができますか?

    accessで複数のテーブルから1つのテーブルに書き込みをしています。VBAでSQL文を作成しDoCmd.RunSQLでinsertを実行しています。データが多いと遅くなるようです。Commitとか実行できるのでしょうか?そうすれば早くなりますか?ご指導のほどお願いいたします。

  • AccessのRunSQLのINSERTでの確認メッセージを消す方法。

    こんにちは。 AccessのRunSQLのINSERTでの確認メッセージを出さない方法を知りたいと思っています。 下記き構文をAccess2000/VBAにて作成しましたが、 DoCmd.RunSQL "INSERT INTO test VALUES ('a','b');" 「一件追加します・・・・」という確認メッセージが表示されてしまいます。 これを出さない方法を知りたいです。 宜しくお願い致します。

  • Access 追加クエリについて

    こんにちは! Accessについて、質問させていただきます。 追加クエリを5つ作成したのですが、『複数値を持つフィールドをINSERT INTO クエリに含めることはできません』とエラーが出ます。 調べたところ、ルックアップウィザードに追加クエリが使用できないものと思われます。 追加クエリの元になるテーブルには、ルックアップウィザードを適用しているフィールド(他のテーブルから値を取得している)が複数あります(フィールド名:取次名・担当者名・形態)。 ちなみに、5つの追加クエリのうち1つはルックアップウィザードのフィールド(値を手入力で設定)も1つありますが正常に作動しています。 何か解決策はありますでしょうか? よろしくお願いします!!

  • アクセス追加クエリで限定したい

    環境は WinXP SP3 ACCESS2003です。 次のように追加クエリでテーブルにデータを追加していますが A B C D 1 545 5555 456 1 444 5485 698 2 584 6985 524 2 526 7898 214 3 548 5455 555 この次に 1 545 5555 456 と同じデータが追加されたとき 追加できないようにしたいのですが うまくいきません Aの追加条件に<>"A" 指定とか 主キーの設定はだめですし どちらさまか ご指導ください

専門家に質問してみよう