oracle中spool卸數,數據卸載--spool的使用



引言

在項目中,我們經常會遇到數據的卸載、裝載需求。

卸載就是需要將數據從數據庫中導入到文本文件中的需求,這樣的方法有很多,比較常用的就是spool命令。

裝載就是需要將數據從文本文件中導入到數據庫中。方法也有很多,常用的方法為:sqlldr。關于sqlldr,詳見博客:《數據裝載--sqlldr的使用》

下面介紹下spool的使用。

一、示例:

spool:是sqlplus的命令。它允許你把一句或者多句sql語句輸出保存為文件格式。

SQL> spool d:\test1.txt

SQL> select userid,username,email from test;

SQL> spool off

查看文件test1.txt,數據導入文件成功。如果在spool后面的輸出文件名那一欄不指定路徑的話,默認在登陸用戶的home目錄下。

二、spool的語法格式:

spool { file_name[.ext] [create|replace|append]| off | out }

file_name:指定輸出的文件名。默認的文件擴展名是.lst。

create:創建一個新的文件。

replace:默認使用該項.覆蓋原有文件中的內容,如果原文件不存在則,新建一個輸出文件。

append:把輸出內容追加到指定的文件中。

off:停止輸出。

out:停止輸出,并發送到默認的打印機,該命令在有些操作系統上面不可用。

三、spool設置

示例一只是非常簡單的使用了spool命令,但是對于sql的格式和輸出文件的格式,最好自己定義好,否則出錯概率非常大。

spool常用的設置

set colsep' ';    //域輸出分隔符

set echo off;    //顯示start啟動的腳本中的每個sql命令,缺省為on

set feedback off;  //回顯本次sql命令處理的記錄條數,缺省為on

set heading off;   //輸出域標題,缺省為on

set pagesize 0;   //輸出每頁行數,缺省為24,為了避免分頁,可設定為0。

set termout off;   //顯示腳本中的命令的執行結果,缺省為on

set trimout on;   //去除標準輸出每行的拖尾空格,缺省為off

set trimspool on;  //去除重定向(spool)輸出每行的拖尾空格,缺省為off

導出文本數據的建議格式:

SQL*PLUS環境設置

SET NEWPAGE NONE

SET HEADING OFF

SET SPACE 0

SET PAGESIZE 0

SET TRIMOUT ON

SET TRIMSPOOL ON

SET LINESIZE 2500

對于字段內包含很多回車換行符的應該給與過濾,形成比較規矩的文本文件。通常情況下,我們使用如下:

set trimspool on

set linesize 120

set pagesize 2000

set newpage 1

set heading off

set term off

spool 路徑+文件名

select col1||','||col2||','||col3||','||col4||'..' from tablename;

spool off

示例一優化為:

SQL> set trimspool on

SQL> set linesize 120

SQL> set pagesize 2000

SQL> set newpage 1

SQL> set term off

SQL> spool d:\test2.txt

SQL> select userid||','||username||','||email||',,' from test;

SQL> spool off

查看test2.txt為:

SQL> select userid||','||username||','||email||',,' from test;

USERID||','||USERNAME||','||EMAIL||',,'

------------------------------------------------------------------------------------------------------------------------

a001,zhangsan,zhangsan@163.com,,

a002,lisi,lisi@163.com,,

a003,wangwu,wangwu@163.com,,

SQL> spool off



本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/278997.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/278997.shtml
英文地址,請注明出處:http://en.pswp.cn/news/278997.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

Objective-C中的@property

1.property是什么 Property是聲明屬性的語法,它可以快速方便的為實例變量創建存取器,并允許我們通過點語法使用存取器。 存取器(accessor):指用于獲取和設置實例變量的方法。用于獲取實例變量值的存取器是getter&#…

Linux基礎命令---findfs

findfs 查找指定卷標或者UUID的文件系統對應的設備文件。findfs將搜索系統中的磁盤,尋找具有標簽匹配標簽或與UUID相等的文件系統。如果找到文件系統,文件系統的設備名稱將打印在stdout上。 此命令的適用范圍:RedHat、RHEL、Ubuntu、CentOS、…

canvas 平滑運動_什么是電視上的運動平滑?人們為什么討厭它?

canvas 平滑運動Willy Barton/Shutterstock.com威利巴頓/Shutterstock.comIf you’ve just bought a new TV, you might be wondering why everything you watch feels eerily sped up and smooth, like you’re watching a live broadcast all the time. You’re not imaginin…

linux guard什么進程,使用linux系統性能監控工具KSysguard監控遠端主機介紹

KDE System Guard默認的窗口前端圖形界面使用傳感器(sensors)獲得要顯示的信息。傳感器返回的可以是一個簡單的數值或更復雜的信息如表格。針對不同的信息類型都提供了一個或多個顯示界面。這些顯示界面被組織在多個工作表中,工作表可以獨立存儲和加載。KSysguard主…

macbook充電_如何判斷MacBook是否正在充電

macbook充電2p2play / Shutterstock2p2play / ShutterstockForgetting to charge your MacBook properly overnight can leave you with a headache in the morning. And if you’re troubleshooting a broken MacBook, checking if it’s able to charge is one way to rule o…

mysql記錄

當沒有用EXISTS引入子查詢時,在選擇列表中只能指定一個表達式轉載于:https://www.cnblogs.com/niuben/p/9920741.html

PIL.Image convert to numpy array

當使用PIL.Image讀取圖像時,如果直接使用numpy.array()轉換會出現錯誤: lst list() for file_name in os.listdir(dir_image):image PIL.Image.open(file_name)lst.append(image) arr numpy.array(lst) 此時,上述最后一行在執行時會出現錯…

NFC服務器在Linux,linux 安裝 libnfc ,打開串口PN532

硬件準備:USB轉串口4針杜邦線PN532模塊IC卡一張(比如門禁卡,飯卡等)軟件準備:Ubuntu 物理機一臺能夠訪問互聯網1,將PN532與USB轉串口連接好,放一張IC卡靠近PN532模塊2,安裝libnfc:chunliubuntu:~$ sudo apt…

chrome同步_如何在Chrome中打開或關閉同步

chrome同步Google Chrome lets you sync up your Google account to your browser across any device. When enabled, bookmarks, history, passwords, extensions, and themes—among many other settings—sync from your Google account, creating a seamless experience no…

sublime text3搭建react native

Sublime Text 3 搭建React.js開發環境 Sublime有很強的自定義功能,插件庫很龐大,針對新語言插件更新很快,配合使用可以快速搭建適配語言的開發環境。 1. babel-sublime 支持ES6, React.js, jsx代碼高亮,對 JavaScript,…

linux系統輸入指令,詳解linux系統輸入輸出管理和vim的常用功能

####系統中輸入輸出的管理####1.理解系統的輸入輸出重定向輸入重定向是指把文件導入到命令中,而輸出重定向則是把原本要輸出到屏幕的數據信息寫入到指定文件中。2.管理輸入輸出的符號##輸出重定向> ##重定向正確輸2> ##重定向錯誤輸出&> …

Deep Learning(深度學習)學習筆記整理(二)

本文整理了網上幾位大牛的博客,詳細地講解了CNN的基礎結構與核心思想,歡迎交流 [1]Deep learning簡介 [2]Deep Learning訓練過程 [3]Deep Learning模型之:CNN卷積神經網絡推導和實現 [4]Deep Learning模型之:CNN的反向求導及練習 …

百度新聞 谷歌新聞_每日新聞摘要:到目前為止,Google I / O提供的最佳信息

百度新聞 谷歌新聞Google’s yearly developer conference started yesterday, and the keynote was chock-full of announcements, demos, and some utterly mind-blowing tech. From Assistant to Android, here’s some of the best stuff to come out of I/O 2019 so far. …

u盤裝服務器linux軟件,服務器維護給您的U盤安裝linux

服務器維護給您的U盤安裝linux如何做好服務器維護?北京艾銻無限科技與你談談IT人員必須知道的服務器維護信息服務器維護小知識因為現在linux普及率實在不高,很多地方都沒有安裝,包括高校機房。為了自身方便和宣傳推廣linux,決定在U盤上安裝一…

幾個WMS的問題處理

采購訂單沒有生成上傳訂單號pkg_inpurchase_task.p_rk_sc_rkd_zc iv_yzid ----- ZDA iv_djbh ---- KPD00014712 銷售訂單下傳下去后直接轉歷史表 select * from INTERFACE_OUT_SALE_M t where djbh like %XSGYMA00220297%日志表查詢結果ORA-01400: 無法將 NULL 插入 ("WMS…

yyblog2.0 數據庫開發規范

一、基礎規范 (1)必須使用InnoDB存儲引擎 解讀:支持事務、行級鎖、并發性能更好、CPU及內存緩存頁優化使得資源利用率更高 (2)表字符集默認使用utf8,必要時候使用utf8mb4 解讀:1、通用&#xff…

word2016 語法檢查_如何改進Microsoft Word的語法檢查器

word2016 語法檢查Microsoft Word comes with a powerful grammar checker, but many of its advanced grammar detection features are disabled by default. Grammarly is popular, but you don’t need it to add grammar checking to Word. Word itself contains a free al…

linux服務器硬件監控,Linux服務器實時監控加載硬件信息

Linux服務器監控之實時監控加載硬件信息Linux負有盛名的特點之一是其非凡的穩定性。然而,如果您的硬件有缺陷或配置不正確,即使是世界上最穩定的操作系統也不會對您有什么幫助。計算機系統是由軟件系統硬件系統組成的,檢測硬件狀態對于保障整…

Using Python with Oracle

2019獨角獸企業重金招聘Python工程師標準>>> Using Python with Oracle This page discusses using Python with Oracle. The page is based on the cx_oracle Python extension module. It was developed on a VM running Oracle Enterprise Linux 6U4 runnng Orac…

小米oj 反向位整數(簡單位運算)

反向位整數 序號:#30難度:一般時間限制:1000ms內存限制:10M 描述 輸入32位無符號整數,輸出它的反向位。 例,輸入4626149(以二進制表示為00000000010001101001011011100101)&#xff…