0
db2のストアード・プロシージャーを使用してテキスト・ファイルの照会を取得する際の助けが必要です。私はこれに非常に新しいので、助けてください。ストアード・プロシージャーを使用して照会全体をファイルにエクスポート
これまでファイルを作成し、作成したファイルにデータを取得することができました。しかし、私はファイル内の完全なクエリが1つの列のデータではありません。
私はこの
CREATE or replace PROCEDURE SCOPEMASTERP(my_statement varchar(10000))
AUTONOMOUS
BEGIN
DECLARE v_filehandle UTL_FILE.FILE_TYPE;
DECLARE v_dirAlias VARCHAR(50) DEFAULT 'mydir';
DECLARE v_filename VARCHAR(100) DEFAULT 'bluestar_transaction-';
DECLARE v_format VARCHAR(200);
SET v_format = '%s\n';
set v_filename = concat(v_filename, VARCHAR_FORMAT(current_date, 'DD-MM-YYYY'));
set v_filename = concat(v_filename, '.log');
CALL UTL_DIR.CREATE_OR_REPLACE_DIRECTORY('D:', '/archivelog/asd/');
SET v_filehandle = UTL_FILE.FOPEN(v_dirAlias,v_filename,'a');
CALL UTL_FILE.PUTF(v_filehandle,v_format, my_statement);
CALL DBMS_OUTPUT.PUT_LINE('Wrote to file: ' || v_filename);
CALL UTL_FILE.FCLOSE(v_filehandle);
END
のようなストアドプロシージャを作成していると私は私が
Insert into SERVEIT.SCOPENAMEMASTER (SCOPENAMEID) values (1013)
GO
を実行していますストアドプロシージャ
CREATE OR REPLACE TRIGGER SCOPEMASTER_Trigger
AFTER INSERT ON SERVEIT.SCOPENAMEMASTER
REFERENCING NEW AS N
FOR EACH ROW
BEGIN ATOMIC
call SCOPEMASTERP(N.SCOPENAMEID);
END
insert文を呼び出していますトリガー内でトリガーを作成しました
「D」ドライブに作成中のファイルは、
しかし、だけではなく、1013年を取得する私は、してください助けを行う必要がありますどのような変更
Insert into SERVEIT.SCOPENAMEMASTER (SCOPENAMEID) values (1013)
ファイルに完全なクエリを必要とします。前もって感謝します!!
その他の質問はまだ必要ですか?そうでない場合は削除します。 http://stackoverflow.com/questions/42089402/trigger-to-write-all-insert-updates-queries-to-file –