
教えてください。
フォームで年月日を入力させ
ボタンを押すとテンポラリーのテーブルが出来る(そのあとでその一時テーブルを使ってselect等がしたい)ような仕組みを作りたいと思っています。
##テーブル名 でいけるかとおもったのですが、
##テーブル名という実際のテーブルができてしまいました。
記述は下記の通りです。
mySQL = "SELECT テーブルA.* INTO [##table] from テーブルA where 年月 = " & n1 & " "
です。 ##テーブル部分を一時テーブルにしたいのですが・・・
どうしたらよいでしょうか?
どうぞよろしくお願いします。
No.2ベストアンサー
- 回答日時:
データベースウィンドウのテーブルの一覧に出さない
(TableDefsコレクションに追加しない)一時テーブルは、
DAOのCreateTableDefで、Name引数を省略することで
作成できるといった話を見たことがあるような・・・
(私自身はこの方法を使ったことはありませんので、
誤解の可能性もあります(汗))
私の場合は、ご質問の件そのままに一旦「##Table」を
実際に作ってしまって、一連の操作が終わったところで
DeleteObjectメソッドを使用して「##Table」を削除、
という対処をしています。
(もっとも、最近は、ワークテーブルのようなものも
テーブルとしてそのまま保存しておいて、必要時に
レコード追加、不要化したらレコード全削除、として
組むようにしていますが:
私の場合は、以前はクエリのデザインビューで対処する
ことが多かったのですが、この場合、削除済みの一時
テーブルを参照したクエリをデザインビューで開くと、
クエリ自体が壊れる(上書き保存しなければ、一時
テーブル再生時には問題なく動きますが)ということが
あったため。
・・・さらに最近はSQL文で対処することが多くなった
ので、どちらでもよくはなっているのですが)
※ディスクへの書き込み発生による動作遅延に関しては
目を瞑っておりますので、その点を問題視しての
ご質問でしたら趣旨が合いませんがご容赦願います。
おぉ!そうでした。そうですね!
一度作って最後に消す処理を入れれば
テーブルが増えることもないですし、
それでいきたいと思います。
#db作成者と管理者が別で、管理者がシステム知識のないものなので、
テーブルが増えたりクエリが増えたりせずとにかくボタン一つで
完了するようなものが作りたかったのです。
非常に助かりました。ありがとうございました。
No.1
- 回答日時:
普通、そういう事をしたいなら、クエリを使います。
データベースのクエリのタブで
SELECT * FROM 元のテーブル WHERE 年月=Mid([Forms]![フォーム名]![日付入力テキスト],1,6)
と言うクエリを作ります。
このクエリを参照元にして
mySQL="SELECT * FROM クエリ名 WHERE 商品分類=" & n2 & " ORDER BY 商品コード"
などとやれば、一時テーブルなど要りません。
簡単に言えば「クエリを作れば、それが一時テーブルになる」のです。
この回答への補足
ありがとうございます。
なるほどです。
ですが、一時テーブルがないと、今度はその後で
活用することが出来ないのかと思ったのですが・・。
つまり、コードビルダのコード内で、まずテンポラリーテーブルを作り、そのテーブルをinにしてopenquery等で様々な加工データに仕分けしたかったのです。
素人の考えなので、やはり発想の転換をしないと無理なのでしょうか?
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Oracle SQL update方法 2 2022/06/22 14:07
- Oracle sqlで質問です。 aテーブルとbテーブルがあり、下記のsqlで取得したidとnameに一致しないレ 1 2022/04/20 20:34
- Oracle 下記のsqlで取得されるレコード以外を取得する方法ありますでしょうか。 SELECT B.番号, B 2 2022/04/20 23:21
- Access(アクセス) Access 登録ボタンからサブフォームの更新 1 2022/07/22 10:23
- Access(アクセス) Accessテーブルの結合で別々のテーブルのフィールドを組み合わせて値を出す方法について 2 2022/07/20 19:43
- MySQL PHPとMySQLを使った掲示板の作り方 1 2022/06/02 13:00
- MySQL 複数DBテーブルからのデータ取得 3 2022/05/17 15:02
- Access(アクセス) Accessにインポートした複数のテーブルを表示させる方法が分かりません。 1 2023/01/30 20:22
- Access(アクセス) アクセスの更新クエリでカレントレコードのみ更新したい 1 2022/06/02 23:32
- Access(アクセス) AccessVBAで降順にするテーブル作成クエリを使用して作成したテーブルを削除し同一のテーブル作成 1 2023/01/06 11:17
このQ&Aを見た人はこんなQ&Aも見ています
-
Access サブフォームでの選択行の取得
その他(データベース)
-
Accessのテーブルデータを一気にVBAで追加したい・・
その他(データベース)
-
SQL文で パラメータが少なすぎます エラー
Access(アクセス)
-
-
4
ACCESSでコントロールソースの変更
Access(アクセス)
-
5
フォームを開くときに、コンボボックスの値を選択(アクセスVBA)
Visual Basic(VBA)
-
6
[Access]帳票フォームにて連続する非連結コントロールに個々の値を入れるには
Access(アクセス)
-
7
アクセス 壊れた? 「ファイルが見つかりません」
Access(アクセス)
-
8
選択したチェックボックスのみチェックを入れたいのですが
その他(データベース)
-
9
アクセスで#エラーを表示させない方法は?
Access(アクセス)
-
10
アクセスVBA フォームのスクロールバーを動かす。
Visual Basic(VBA)
-
11
Accessの画面更新を一時的に停止する方法。
その他(データベース)
-
12
ADOを使ったDBアクセス後のメモリ解放
その他(データベース)
-
13
VBAでループ内で使う変数名を可変にできないか。
Visual Basic(VBA)
-
14
Accessのフォーム上にレコード数とレコード番号の表示
その他(データベース)
-
15
ACCESSのサブフォームからメインフォームへの移動
Access(アクセス)
-
16
アクセスで数値型のフィールドにNullをいれたい
その他(データベース)
-
17
Access 別フォームへの再クエリ(更新)がしたい。
その他(データベース)
-
18
Access VBAでタブコントロールで選択するタブをしていするには。
Access(アクセス)
-
19
親フォームからサブフォームのレコードソースを設定
Access(アクセス)
-
20
Access 削除クエリが重い
その他(データベース)
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
access vbaにてテンポラリーテ...
-
Acccessで2つのテーブルから1...
-
ACCESSユニオンクエリから新テ...
-
2つのテーブルに共通するレコ...
-
Accessのテーブルで、リンク?...
-
テーブルに表示されているもの...
-
accessについて(超初心者です)
-
Accessで・・。
-
クエリで同一テーブルの複数回...
-
アクセスでフォームが消える(...
-
access2000・・テーブルをデー...
-
Accessでリストの並び順を変更...
-
Accessのリンクされたテーブル...
-
AccessでのリンクテーブルとADO...
-
Accessのクエリで
-
アクセス2000でのリンク先...
-
Accessで使用しているリンクテ...
-
Accessでリンクテーブルからロ...
-
COBOLでHEXを印字する
-
Accesss テーブルの最終更新日...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
2つのテーブルに共通するレコ...
-
ACCESSユニオンクエリから新テ...
-
テーブルに表示されているもの...
-
Accessのリンクされたテーブル...
-
access vbaにてテンポラリーテ...
-
Acccessで2つのテーブルから1...
-
最新日のデータのみ抽出するク...
-
Accessのテーブルで、リンク?...
-
Accessでリストの並び順を変更...
-
アクセス 部分一致の抽出
-
ACCESS テーブルを見比...
-
ACCESSでテーブルをコピーしよ...
-
accessのテーブルを閉じたとき...
-
ACCESS テーブルを見比...
-
AccessでのリンクテーブルとADO...
-
クエリで同一テーブルの複数回...
-
accessエラー回避について
-
アクセス2016 チェックボックス...
-
Access 分割したテーブルを一対...
-
access2000・・テーブルをデー...
おすすめ情報