簡體   English   中英

選擇要在Oracle中插入/更新語句的表?

[英]Select table for insert/update statement in Oracle?

我想把這個扔掉一些想法。 我正在編寫一個程序來生成插入/更新語句,並且我希望插入/更新的表來自查詢結果。 所以類似(請原諒語法):

INSERT INTO (SELECT TBL_NAME FROM MYTABLES WHERE A=B) VALUES ('A', 'B', 'C');

我必須在Oracle中執行此操作,但是我對它們的聲明語句或語法不太熟悉。 我猜想最好的方法是聲明一個SELECT結果的變量,但是我可以將該變量用作INSERT的表名嗎?

我也想將代碼保留在SQL中。

感謝您的任何想法。

我認為您可能想研究Dynamic SQL ,在那里可能會找到答案(或者至少是一個不錯的起點)。

這樣的事情怎么樣:

SELECT 'INSERT INTO ' || TBL_NAME || ' VALUES (''A'', ''B'', ''C'');' cmd
FROM MYTABLES WHERE A=B
;

運行此選擇,然后運行選擇的結果(即插入語句)。 不要忘記“提交”。

問候,羅傑所有意見都是我的...

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM