簡體   English   中英

嘗試將pl / sql腳本摘錄導出到excel文件,該文件當前正在提取數據並將其放在文本文件中

[英]trying to export the pl/sql script exctract to excel file which is currently extracting the data and putting it in text file

我有一個PL / SQL腳本,該腳本當前生成一個文本文件,但是我需要從該腳本生成excel文件。 我目前有如下的pl / sql代碼,

BEGIN  
  --column headers  
  DBMS_OUTPUT.PUT_LINE(‘column name header 1 | column name header 2 | 
  column name header 3 |………..| column name header n’);  
END; /  
  --extract 
  (SELECT UNIQUE temptable.columnname1 || '|' ||  
  temptable.columnname2 || '|' ||                
  ‘columnname3’ || '|' ||               
  ………………                
  temptable.columnnamen '|' 
  FROM   temptable 
  WHERE  temptable.OUTPUT_INDICATOR = 'extract ready'); 

我嘗試使用.csv擴展名重命名目標文件名,但是所有數據都被復制到Excel中的單個單元格中。 誰能告訴我我們如何修改以上代碼以將數據提取到excel文件中? 謝謝。

使用像提取行這樣的分隔符來構建標題行,但是所有分隔符都使用逗號。

在cvs中,您應該使用分隔符,該分隔符在您的區域設置中由excel識別(例如,在美國,它是逗號(,)字符,在其他國家,則可能是分號(;))

以下是帶逗號分隔值的示例

BEGIN  
  --column headers  
  DBMS_OUTPUT.PUT_LINE(‘column name header 1 , column name header 2 , 
  column name header 3 ,……….., column name header n’);  
END; /  
  --extract 
  (SELECT UNIQUE temptable.columnname1 || ',' ||  
  temptable.columnname2 || ',' ||                
  ‘columnname3’ || ',' ||               
  ………………                
  temptable.columnnamen ',' 
  FROM   temptable 
  WHERE  temptable.OUTPUT_INDICATOR = 'extract ready'); 

使用逗號,作為列分隔符,使用\\r\\n作為行分隔符:

BEGIN  
  --column headers  
  DBMS_OUTPUT.PUT_LINE(‘column name header 1 , column name header 2 , 
  column name header 3 ,……….., column name header n’ || '\r\n');  
END; /  
  --extract 
  (SELECT UNIQUE temptable.columnname1 || ',' ||  
  temptable.columnname2 || ',' ||                
  ‘columnname3’ || ',' ||               
  ………………                
  temptable.columnnamen || '\r\n' 
  FROM   temptable 
  WHERE  temptable.OUTPUT_INDICATOR = 'extract ready'); 

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM