ローカル一時テーブル #tblTmpYaks を作成し、この一時テーブルのレコードを選択してパススルー クエリに表示する必要があります。
一時テーブルは次のように作成されます。
CREATE TABLE #tblTmpYaks (ID INT NOT NULL IDENTITY,
YakName CHAR(30),
PRIMARY KEY (ID));
INSERT INTO #tblTmpYaks (YakName) VALUES('My Yak');
INSERT INTO #tblTmpYaks (YakName) VALUES('My Female Yak');
次に、SQL 文字列を使用してパススルー クエリが作成されます。
SELECT * FROM #tblTmpYaks;
しかし、これを開いたときに MsgBox が表示されるため、これは機能しません。
これは、#tblTmpYaks が SQL Server に存在しないことを意味します。
これを機能させる方法は?
結論に事後論を追加
Gord Thompsonが以下で述べているように、ローカルの SQL Server セッションの間だけ存在するローカル一時テーブル #tblTmpYaks の使用を放棄します。代わりに、##tblTmpYaks で示されるグローバル一時テーブルがここで使用され、パススルー クエリを介して Access レポートの RecordSource で暗示することができ、さらに Access インターフェイスを終了すると自動的に削除されます。