国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 數(shù)據(jù)庫 > Oracle > 正文

ORACLE數(shù)據(jù)庫記錄輸出到文本文件的方法

2024-08-29 13:38:48
字體:
來源:轉載
供稿:網(wǎng)友

  Oracle數(shù)據(jù)庫記錄輸出到文本文件的方法
  中國科技信息研究所
  涂悅紅
  ---- 在某些情況下,比如說為了與其他數(shù)據(jù)庫進行數(shù)據(jù)交換,我們需要把ORACLE數(shù)據(jù)庫里的數(shù)據(jù)輸出來,保存到一個中間文件,然后再作處理。那么如何輸出ORACLE數(shù)據(jù)庫里的數(shù)據(jù)呢?
  
  ---- 假設這些數(shù)據(jù)是文本類型的數(shù)據(jù)(字符、數(shù)字、日期),我們至少有兩種辦法輸出,一種是利用制表功能,把所有數(shù)據(jù)以表格形式輸出,并把表格保存到一個文本文件。另一種辦法更簡單,就是利用UTL_FILE包,直接把數(shù)據(jù)輸入到文本文件。
  
  ---- 在使用UTL_FILE包前需要在ORACLE數(shù)據(jù)庫的初始化文件(initsid.ora)定義UTL_FILE的可寫目錄,例如
  
  UTL_FILE=/eXPort/home/oracle/output
  
  ---- 另外,還要注重的是輸出記錄中字段最大大小是1023字節(jié),假如有字段超過這個限制,就需要把它截斷成幾部分,就如下面的例子一樣。
  ---- 這里給出一個實例,朋友們可以先照搬,然后根據(jù)自己數(shù)據(jù)庫的實際情況,修改后使用。
  
  DECLARE
  OutputFile UTL_FILE.FILE_TYPE;
  vart_title perd11.ART_TITLE%TYPE;
  vart_author perd11.ART_AUTHOR%TYPE;
  vart_keyWord perd11.ART_KEYWORD%TYPE;
  vart_abstract perd11.ART_ABSTRACT%TYPE;
  vart_abs1 perd11.ART_ABSTRACT%TYPE;
  vart_abs2 perd11.ART_ABSTRACT%TYPE;
  vart_authorinstitute perd11.ART_AUTHORINSTITUTE%TYPE;
  vperd_volume perd11.PERD_VOLUME%TYPE;
  vperd_issue perd11.PERD_ISSUE%TYPE;
  vperd_date perd11.PERD_DATE%TYPE;
  vpub_name perd11.PUB_NAME%TYPE;
  vpub_issn perd11.PUB_ISSN%TYPE;
  vclass_name perd11.CLASS_NAME%TYPE;
  
  CURSOR cperd11 IS
  select * from perd11;
  
  BEGIN
  OutputFile := UTL_FILE.FOPEN
  ('/export/home/oracle/output','perd11.out','a');
  open cperd11;
  LOOP
  fetch cperd11 into vart_no,vart_title,
  vart_author,vart_keyword,vart_abstract,
  vart_authorinstitute,vperd_volume,
  vperd_issue,vperd_date,vpub_name,
  vpub_issn,vclass_name;
  IF length(vart_abstract)>1000 THEN
  vart_abs1:=substr(vart_abstract,0,1000);
  vart_abs2:=substr(vart_abstract,1001);
  ELSE
  vart_abs1:=vart_abstract;
  vart_abs2:='';
  END IF;
  UTL_FILE.PUTF(OutputFile,'
  【期刊類別】/n%s/n',vclass_name);
  UTL_FILE.PUTF(OutputFile,'
  【期刊刊號】/n%s/n',vpub_issn);
  UTL_FILE.PUTF(OutputFile,'
  【期刊名稱】/n%s/n',vpub_name);
  UTL_FILE.PUTF(OutputFile,'
  【期刊卷號】/n%s/n',vperd_volume);
  UTL_FILE.PUTF(OutputFile,'
  【期刊期號】/n%s/n',vperd_issue);
  UTL_FILE.PUTF(OutputFile,'
  【出版日期】/n%s/n',vperd_date);
  UTL_FILE.PUTF(OutputFile,'
  【中文標題】/n%s/n',vart_chntitle);
  UTL_FILE.PUTF(OutputFile,'
  【中文作者】/n%s/n',vart_chnauthor);

  UTL_FILE.PUTF(OutputFile,'
  【作者單位】/n%s/n',vart_authorinstitute);
  UTL_FILE.PUTF(OutputFile,'
  【中文要害詞】/n%s/n',vart_chnkeyword);
  UTL_FILE.PUTF(OutputFile,'
  【中文文摘】/n%s/n',vart_engabs1);
  UTL_FILE.PUTF(OutputFile,'
  【中文文摘2】/n%s/n',vart_engabs2);
  UTL_FILE.FFLUSH(OutputFile);
  exit when cperd11%NOTFOUND;
  END LOOP;
  close cperd11;
  
  END;

發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 武乡县| 托克逊县| 临潭县| 启东市| 安多县| 喀喇| 三亚市| 湖北省| 碌曲县| 封开县| 德惠市| 改则县| 富锦市| 云龙县| 巨野县| 都江堰市| 西乌| 蓬莱市| 额敏县| 新兴县| 深圳市| 昌乐县| 综艺| 太湖县| 临桂县| 囊谦县| 祁阳县| 桂东县| 鲁山县| 日照市| 五莲县| 山东| 山东省| 高尔夫| 武清区| 南开区| 盐池县| 司法| 多伦县| 南昌县| 紫阳县|