No.4ベストアンサー
- 回答日時:
再びです。
はっきり結論付けなくてすみません。
完全に否定したわけではありませんが、以前サポートに似た質問をしたところできないといわれました。
あとパフォーマンス的にとおっしゃっていますが、作り方によりますが、SQL文のアクセスパスパスが決まらないのは、PL/SQL内の固定SQL文も、動的SQL文も同じだと思います。差が出るのは、SQL文自身の解析が、固定SQL文と動的SQL文の違いになると思いますが、以前テストしてみたら、その部分は大きな差はなかったと思いますが・・・。
いずれにしても、たいした力になれなくて申し訳ありません。
No.3
- 回答日時:
PL/SQLで、DROP文等のDDL文を使いたいときは、DBMS_SQLパッケージを使用する必要があります。
テーブル名を変数にしたいときも同じことです。DBMS_SQLパッケージは、PL/SQLパッケージの中では割とよく使うパッケージなので、多くの情報が得られると思います。
調べてみてください。
アドバイスありがとうございます。
質問中でも書きましたが
DBMS_SQLパッケージでの実行は、動作確認済みです。
文章内容から推測すると「できない」ということになるのでしょうか?
ない頭なりに考えて、
UTL_FILE.PUT_LINEを使いPL/SQLの関数を作成してしまえばとも
考えましたが、結局 コンパイル時に解析しなくてはならず一緒ですね。
No.2
- 回答日時:
も一度こんばんわ
うーん、これは難しいような気がします
とは言っても僕も大して経験があるわけではないので、
「絶対に不可能」とは言い切れませんが・・・
少なくとも僕の知識の範疇では無理そうです。
カーソルうんぬん・・・と言うことであれば、
FETCHして取得したテーブル名を
IF文で条件分岐してその中でそれぞれの処理を行う・・・
と言うくらいしか僕には思いつきません。
うーん、お役に立てなくて、すみませんね
アドバイスありがとうございます。
相談した人もそのようなこといってました。
テーブル名というのが
たとえば
受注YYYYという形で
後ろ4桁が年になっているんです。
実用年数を考えるとIF文でもいいような気がしますが、
システム会社への納品物なのであんまりなソースになってしまい
NGくらいそうなので
No.1
- 回答日時:
こんばんわ
FROM句に使いたい・・・と言うことは、
user_tablesから得られたテーブルに対して
何か処理を行いたいということですか?
※処理対象のテーブルが毎回異なるということですか?
もう少し詳しく(具体的に)やりたい内容を
教えて戴けませんでしょうか?
※取得したテーブル名に対して何を行いたいのか、など
もしかしたら、アドバイスくらいなら出来るかもしれません
それでは
この回答への補足
説明不足でしたかすみません
えっと
まず
user_tablesから得たTABLE_NAMEをカーソルを使い
1件ずつフェッチして
そのテーブルにたいして
SELECTやDELETE、DROPなどの処理をしたいのです。
ということで
>処理対象のテーブルが毎回異なるということですか?
そのとうりです。
アドバイスお願いします。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Oracle SQLについて教えて下さい。 主キーを持ったカラムを主キーの機能を持たせたまま カンマ区切りで文字列 1 2023/03/27 22:47
- SQL Server [SQLServer] テーブル名からカラム名を取得する 1 2022/08/23 21:20
- Oracle sqlで質問です。 aテーブルとbテーブルがあり、下記のsqlで取得したidとnameに一致しないレ 1 2022/04/20 20:34
- Visual Basic(VBA) データベースから絞り込んでデータを読み込み 1 2023/02/21 19:51
- その他(プログラミング・Web制作) Rでのスクリプトのご相談 3 2022/12/08 16:22
- Visual Basic(VBA) access count数を変数に格納 2 2022/03/30 19:21
- SQL Server SQLについて 3 2023/02/24 12:25
- SQL Server 大学でSQLの授業があるのですが全くわかりません。 表ではなく文で説明されているのですが調べても理解 6 2022/07/20 02:26
- MySQL 書籍の内容はまともでしょうか? 1 2023/01/22 03:07
- その他(ブログ) ブログの作成 2 2023/06/25 09:11
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
accessテーブル作成クエリを実...
-
Accessでバージョン違いのファ...
-
エクセルでテーブルの最終行が...
-
AccessでOracleのテーブルをリ...
-
PL/SQLでFROM句に変数を使いたい
-
UNIONなどで複数のテーブルから...
-
テーブル作成クエリで新テーブ...
-
あるテーブルのデータを追加、...
-
SI Object Browserのテーブルス...
-
Access のリレーションシップで...
-
列サイズ変更時、DB停止は必要?
-
アクセスのテーブル作成クエリ...
-
エクセルでCtrl+Tでテーブルの...
-
クエリのキャンセルがいつにな...
-
ファイルメーカーのテーブルの...
-
エクセルの数式で添付写真のも...
-
ユニオンクエリの結果をテーブ...
-
「マスタ」と「テーブル」の違...
-
ACCESSのSQLで、NULLかNULLでな...
-
ACCESS 一つのフィールドに複...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
エクセルでテーブルの最終行が...
-
エクセルでCtrl+Tでテーブルの...
-
accessテーブル作成クエリを実...
-
クエリのキャンセルがいつにな...
-
ユニオンクエリの結果をテーブ...
-
コンボボックスで入力したもの...
-
SI Object Browserのテーブルス...
-
SQLスクリプトを自動生成する方法
-
あるテーブルのデータを追加、...
-
VIEWしか読み取れないユーザの...
-
UNIONなどで複数のテーブルから...
-
AccessVBAで降順にするテーブル...
-
テーブル作成クエリで新テーブ...
-
Access のリレーションシップで...
-
ADOでSeekメッソッドが使えませ...
-
エクセルの数式で添付写真のも...
-
アクセスのテーブル作成クエリ...
-
レプリケーションしているテー...
-
AccessでOracleのテーブルをリ...
-
ストアドをまたがるローカル一...
おすすめ情報