2011-07-22 10 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上で動的SQLを実行する方法を見つける研究の日後に、DB2のドキュメントhttp://publib.boulder.ibm.com/infocenter/db2luw/v9r5/index.jsp

0

どのような問題が発生していますか?

可能性が高い方法があります。ここでは1です:

ファイル - >新規 - >その他 - > SQLまたはXQueryスクリプト

プロジェクトを作成するか、データベース接続を定義する必要があるかもしれません。

SQLコードを入力します。

スクリプト - >スクリプトを実行します。

結果は画面の下部に表示されます。

3

EXECUTEPREPAREを読む:

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

コントロールセンターで、データベースを右クリックすると、「クエリ」が表示されます。それをクリックすると、あなたは行こうとします。

enter image description here

関連する問題