-1
디렉터리를 만들고 파일을 만들려면 익명 블록을 만들었습니다. 블록을 실행할 때마다 파일을 덮어 씁니다. 새 파일로 만들어야합니다. 이것을 성취하기 위해 무엇을해야합니까?디렉터리 만들기 파일 이름이
DECLARE
v_name utl_file.file_type;
v_count NUMBER := 0;
BEGIN
v_name := utl_file.fopen('PLSQL_DIR', 'Task1.txt', 'W');
utl_file.put_line(
v_name,
TO_CHAR(SYSDATE, 'DD/MM/YY/HH/MI')||' Data Migration Starts'
);
FOR i IN (SELECT * FROM sue_par_det_tb) LOOP
utl_file.put_line(
v_name,
i.patient_name||', '|| i.ord_date||', '|| i.mobile_number||', '|| i.refered_by
);
v_count := v_count + 1;
END LOOP;
utl_file.put_line(
v_name,
v_count||' Rows generated at '||TO_CHAR(SYSDATE, 'DD/MM/YY/HH24/MI')
);
utl_file.fclose(v_name);
END;
/
질문을 편집하고 코드를 추가하십시오. 동일한 파일 이름을 사용하는 경우 Oracle은 동일한 파일에 기록합니다. –
DECLARE \t v_name \t utl_file.file_type; \t v_count \t NUMBER : = 0; BEGIN \t v_name : = utl_file.fopen ('PLSQL_DIR', 'Task1.txt', 'W'); \t utl_file.put_line (v_name, TO_CHAR (SYSDATE, 'DD/MM/YY/HH/MI') || '데이터 이전 시작'); \t 제가 IN (SELECT * sue_par_det_tb) 미국 \t \t \t \t LOOP utl_file.put_line (v_name, \t \t \t \t \t \t i.patient_name || ''|| \t \t \t \t \t \t I. ord_date || ','|| \t \t \t \t \t i.mobile_number || ','|| \t \t \t \t \t \t i.refered_by); \t \t v_count : = v_count + 1; \t \t 끝 루프; \t utl_file.put_line (v_name, v_count || 'TO_CHAR (SYSDATE,'DD/MM/YY/HH24/MI ')에서 생성 된 행); \t utl_file.fclose (v_name); END; / –
위의 쿼리에서 n 번 실행하기 위해 중복 파일을 만들어야합니다. –