2011-07-22 45 views

回答

4

你的意思是執行動態SQL字符串嗎?例如:

DECLARE stmt VARCHAR(1000); 
DECLARE my_table VARCHAR(50); 
SET my_table = 'DEPT_'||deptNumber; 
SET stmt = 'SELECT * FROM '||my_table; 
PREPARE s1 FROM stmt; 
EXECUTE s1; 

儘管你只能在存儲過程中做到這一點。其中一個定義爲CREATE PROCEDURE GetDeptInfo (deptNumber VARCHAR(5))。閱讀在DB2文檔http://publib.boulder.ibm.com/infocenter/db2luw/v9r5/index.jsp

0

你遇到什麼困難?

有很多方法可以做到這一點。這裏有一個:

文件 - >新建 - >其他 - > SQL或XQuery腳本

您可能需要創建一個項目或定義數據庫連接。

輸入SQL代碼。

腳本 - >運行腳本。

結果將顯示在屏幕的底部。

3

EXECUTEPREPARE經過研究,我發現瞭如何編寫並在DB2上運行動態SQL的日子:

create or replace procedure Search() 

    BEGIN 

     DECLARE v_dynamicSql varchar(2000); 
     SET v_dynamicSql = 'INSERT INTO dictonary(name) values(' || 'dynamicSQL in db2' ||')'; 

     EXECUTE IMMEDIATE v_dynamicSql; 

    END; 

希望能幫助別人。

0

在Control Center中,右鍵單擊數據庫,您會看到「查詢」。點擊它,你很好去。

enter image description here