Oracle
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Oracle

Cách tạo tệp cuộn chỉ lệnh sql oracle

Thao tác này sẽ chuyển đầu ra từ khối ẩn danh vào một tệp có tên là output_<YYYYMMDD>.txt nằm trong thư mục gốc của PC cục bộ C:ổ đĩa nơi <YYYYMMDD> là ngày hiện tại:

SET SERVEROUTPUT ON FORMAT WRAPPED
SET VERIFY OFF

SET FEEDBACK OFF
SET TERMOUT OFF

column date_column new_value today_var
select to_char(sysdate, 'yyyymmdd') date_column
  from dual
/
DBMS_OUTPUT.ENABLE(1000000);

SPOOL C:\output_&today_var..txt

DECLARE
   ab varchar2(10) := 'Raj';
   cd varchar2(10);
   a  number := 10;
   c  number;
   d  number; 
BEGIN
   c := a+10;
   --
   SELECT ab, c 
     INTO cd, d 
     FROM dual;
   --
   DBMS_OUTPUT.put_line('cd: '||cd);
   DBMS_OUTPUT.put_line('d: '||d);
END; 

SPOOL OFF

SET TERMOUT ON
SET FEEDBACK ON
SET VERIFY ON

PROMPT
PROMPT Done, please see file C:\output_&today_var..txt
PROMPT

Hy vọng nó sẽ giúp ...

CHỈNH SỬA:

Sau khi nhận xét của bạn để xuất ra một giá trị cho mỗi lần lặp lại con trỏ (tôi nhận thấy mỗi giá trị sẽ giống nhau trong ví dụ này nhưng bạn sẽ hiểu được ý chính của những gì tôi đang làm):

BEGIN
   c := a+10;
   --
   FOR i IN 1 .. 10
   LOOP
      c := a+10;
      -- Output the value of C
      DBMS_OUTPUT.put_line('c: '||c);
   END LOOP;
   --
END; 


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Cố vấn DBA của Oracle

  2. Cách thực thi một thủ tục được lưu trữ Oracle thông qua liên kết cơ sở dữ liệu

  3. Tìm nguyên nhân gây ra lỗi deadlock từ tệp theo dõi oracle

  4. Oracle SQL Hours Sự khác biệt giữa các ngày trong HH:MM:SS

  5. Không thể tải DLL “OraOps10.dll”