• ベストアンサー
  • すぐに回答を!

MSAccessの追加クエリを使って

MSAccessの追加クエリを使用して、SQLサーバのテーブルにレコードを追加したいのですが、やり方がわかりません。 追加クエリでテーブルを指定する場合、必ずカレントテーブルしか選択できないのですがSQLサーバとリンクを貼ったテーブルに書き込む設定がわかりません。 お手数ですがよろしくお願いします。

共感・応援の気持ちを伝えよう!

  • 回答数1
  • 閲覧数106
  • ありがとう数1

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

  • ベストアンサー
  • 回答No.1
  • nda23
  • ベストアンサー率55% (773/1384)

>必ずカレントテーブルしか選択できないのですが 何かの間違いでは?「カレントテーブル」とは何ですか? >SQLサーバとリンクを貼ったテーブル リンクしたテーブルなら普通の追加クエリで処理できます。 自MDB内のテーブルと同じに扱えます。(プライマリキーが必要かも) 確実なのはパススルークエリを使うことです。 SQL Server に直接届くため、Accessではなく、SQL Server の文法で 全て「手書き」しなければなりませんが、高速で SQL Server の 組込み関数も使用できます。当然ではありますがMDBのテーブルを 参照したり、VBAの関数を使うことはできません。

共感・感謝の気持ちを伝えよう!

質問者からのお礼

どうやら何らかの設定により私のPCで出来なくなっていたようです。違うPCで確認したところ出来ることが確認できました。 パススルークエリも試してみたところ使えそうです。 ありがとうございました。 (ちなみに「カレントテーブル」ではなく「カレントデータベース」の間違いでした。)

関連するQ&A

  • MSアクセスのクエリで結果がおかしい

    アクセス2000で追加クエリを作成していますが、 クエリのデータシートビューで確認したレコードと 追加されたテーブルで確認したレコードが異なり、テーブルのデータが少なくなってしまっています。 条件としては、 クエリの参照元 SQLサーバからのリンクテーブル(レコード数で13万件程度) 追加先のテーブルはローカルのmdb内です たまたまかもしれませんが、今テストしているデータは、 クエリ上では、19件あるものの、実行しても9件しか追加されません。 原因としてありそうなものがわかる方がいれば、よろしくお願いします。

  • Accessのクエリでレコード追加

    Access初心者です。 バージョンは2010をつかっています。 テーブルを14テーブル含み、フィールド数が100ほどある選択クエリを作りました。 抽出条件などは設定していません。 このクエリで新しくデータを入力、レコードを追加し、上書き保存した後クエリを閉じます。 それからまた、そのクエリを開くとレコードが追加されていません。 テーブルにはその入力したデータは追加されています。 このクエリにもそのデータを追加表示させるためにはどうすればいいですか? 表示されない原因はなんなのかお教えお願いします。

  • アクセスの追加クエリについて

    二つのテーブル間(AとB)を追加クエリを使い AからレコードをBに追加することは出来たんですが、 逆にBからAにレコードを追加しようと選択クエリを追加クエリに変更しようとしたんですが、ウィザードの追加先テーブル名にAのテーブル名が表れないですがその理由が全く分からないので分かる方教えていただけませんか? AとBのレコード内のフィールドは同じです。 AからBにレコードを移行する処理としてマクロを使いアクションとして ・クエリを開く(これは追加クエリです) ・SQLの実行(上と同じクエリを削除クエリに変更し、そのSQL文をSOLステートメントに貼り付けました) 上の処理は問題なく出来たので逆のBからAへレコード移行処理のマクロを作ろうとしたのですが、追加クエリの追加先テーブルにテーブルAの名前が出てこないので困っています。こういったAからB。BからAという処理は追加クエリで出来ないのでしょうか?

  • Accessの追加クエリで疑問点があり、質問します。

    Accessの追加クエリで疑問点があり、質問します。 フォームにボタンを作り、それをクリックすると、追加クエリを動かす前に、対象のテーブル内を削除クエリで空にしてから、追加クエリを動かし、その後追加先のテーブルをテキストファイルへとエクスポートしています。 この作業の追加クエリでテーブルへデータを追加する際は、追加クエリで設定しているデータの並び替えは反映しないのでしょうか? テーブルはデータを入れておく器にすぎなので、いくら並びを指定してテーブルへデータを順番通りに追加していっても、テーブル内はその順番通りに保存されるとは限らないと聞いた事があります。 そこで、最終的にテキストファイルへエクスポートする場合は、追加クエリをやめて、選択クエリに変更し、これをテキストファイルへエクスポートした方が安全でしょうか?または、追加クエリで並びを指定しておけば、追加クエリで追加したデータはテーブルに追加された際は、追加クエリで指定したデータの並び順になるものなのでしょうか? ご教授よろしくお願いします。

  • 追加クエリでテーブル全体を指定したまま条件を追加したい

    ACCESS2000を使ってます。 追加クエリでレコード追加の元となるテーブル全体を選択してます。 クエリのフィールド:テーブル名称.*と指定していますが、テーブルに追加する条件として、西暦4桁が格納されている「NENNDO」フィールドに2006だけのレコードを追加したいです。 クエリのデザインでフィールド:テーブル名称.*と指定されている状況で「NENNO」フィールドを追加して抽出条件に2006を指定して実行すると「出力先が重複しています」と表示されます。 追加クエリの対象テーブルが沢山あって、レコード追加先がOracleとなっているのでテーブルを削除せずにACCESSの削除クエリと追加クエリでレコードの作業したいと思っております。 フィールド:テーブル名称.*としたまま、テーブルに追加する条件だけを設定する方法をご教授願います。 (フィールドは、*ではなく、フィールド全てを1つづつ指定しないといけないのでしょうか?)

  • Access 削除クエリが重い

    お世話になります。 環境:Access2003     SQL Server 2008 R2 Express 先日、Accessのローカルにあるテーブルが20万レコードを超えた為、SQLサーバーへ移行しました。 しかし、Accessより削除クエリにて(フォーム上に設置した削除ボタンにて)当該テーブルのレコードを削除しようとすると、4分ほどかかりました。 なお、ローカルにあったときは上記操作をしても2、3秒程度で削除完了してました。 PCのスペックやテーブルのレコード数によるかとは思うのですが、ローカルテーブルとSQLテーブルでこんなに時間が違うものなのでしょうか。 また、回避策や何か設定すれば早くなるなどございましたら、ご教授頂けたらと思います。 宜しくお願い致します。

  • Access 選択クエリーの入力制限

    Access97を使用しています。 選択クエリーを用いて単一テーブルの任意の列を表示 します。 元データは単一テーブルなので、選択クエリーに対して 新規レコードを追加すると、そのまま元のテーブルにも レコードが追加されますよね? この選択クエリーの機能を参照のみに限定し、 レコード追加・更新は制限したいのですが、これを実現 することはできるのでしょうか? データシート形式のフォームなら選択クエリーとほぼ 同じイメージで操作できるし、これならプロパティの 「追加の許可」「更新の許可」あたりを設定すれば レコード追加を抑制できると思いますが、極力選択 クエリーを使いたいんです。 よろしくお願いします。

  • Access クエリについて

    Accessのテーブル1に、フィールド「コード」「回数」があり、レコードとして A,32 B,20 C,13 ・・・というように、ランダムなコードと回数がセットされているとします。コードは主キーです。 このテーブル1を元にしたクエリで A,1 A,2 A,3 ・・・ A,32 B,1 B,2 ・・・ B,20 C,1 C,2 ・・・ C,13 というように、コードごとに「回数」と同じ数のレコードがクエリ上に生成されるようにしたいのですが、こういうことは出来るのでしょうか?出来ればSQLで回答いただけないでしょうか。

  • テーブルへのデータ追加の元となるクエリの探し方

    Accessのあるテーブルがあります。 そのテーブルには、クエリによりレコードが追加されていると思われるのですが、どのクエリを元にレコードが追加されているのか不明です。 どのクエリを元にレコードが追加されているのかを探り当てるには、どのようにしたらよいか、ご教授願います。 ※ Win XP、Access2002で作業しています。

  • access追加クエリ実行時の重複を防ぎたい

    ACCESS 2010にて、追加クエリでテーブルにレコードを追加しています。 テーブル構造は、ID、製品名、在庫数、入荷日、依頼日となっています。 いくつかの選択クエリとクロス集計クエリを経て、その結果を追加クエリで、製品名、在庫数、入荷日の3フィールドに追加しています。 依頼日は、追加クエリ実行後にデータシート型フォームから入力しています。 その後、追加クエリを実行すると、依頼日の入力されていない重複データが追加されてしまうので、追加クエリを実行しても重複しないようにしたいのです。 わかる方、ぜひ教えて下さい。 宜しくお願いします。