我正在使用Oracle 11g數據庫的傳統應用程序工作,並且遇到了一個問題,我有5個表都以不同架構具有相同的數據結構。我需要能夠將數據插入到這些表中,我試圖避免重複的代碼。是否可以在SQL中使用變量作爲表名?
我知道這樣做以下
IF p_schema = SCHEMA1 THEN
INSERT INTO SCHEMA1.TABLE_NAME_SCHEMA1 (...) VALUES (...)
ELSIF p_schema = SCHEMA2 THEN
INSERT INTO SCHEMA2.TABLE_NAME_SCHEMA2 (...) VALUES (...)
ELSIF p_schema = SCHEMA3 THEN
INSERT INTO SCHEMA3.TABLE_NAME_SCHEMA3 (...) VALUES (...)
ELSIF p_schema = SCHEMA4 THEN
INSERT INTO SCHEMA4.TABLE_NAME_SCHEMA4 (...) VALUES (...)
ELSIF p_schema = SCHEMA5 THEN
INSERT INTO SCHEMA5.TABLE_NAME_SCHEMA5 (...) VALUES (...)
END IF;
有沒有什麼辦法,使表名在SQL中的變量,這樣我就可以做一個INSERT語句,但插入到我想要的表?
請描述你的努力和迄今結果。 – 2015-02-06 19:39:20