1.把所有的文件都放在同一個(gè)目錄下,然后在命令行里執(zhí)行命令:

站在用戶的角度思考問(wèn)題,與客戶深入溝通,找到閬中網(wǎng)站設(shè)計(jì)與閬中網(wǎng)站推廣的解決方案,憑借多年的經(jīng)驗(yàn),讓設(shè)計(jì)與互聯(lián)網(wǎng)技術(shù)結(jié)合,創(chuàng)造個(gè)性化、用戶體驗(yàn)好的作品,建站類型包括:網(wǎng)站設(shè)計(jì)、成都做網(wǎng)站、企業(yè)官網(wǎng)、英文網(wǎng)站、手機(jī)端網(wǎng)站、網(wǎng)站推廣、域名與空間、網(wǎng)頁(yè)空間、企業(yè)郵箱。業(yè)務(wù)覆蓋閬中地區(qū)。
c:dir/b d:/all.sql
把所有的sql文件名都輸出到一個(gè)sql文件中。
2.用UltraEdit打開(kāi)生成的sql文件,alt+C切換到column mode,給所有的行前都添加一個(gè)“@”,保存。
3.在sqlplus中執(zhí)行“@d:/all.sql”
要在sql下面執(zhí)行shell語(yǔ)句,用!符號(hào),不過(guò)功能有限;有的時(shí)候打不到我們想要的效果!先給你兩個(gè)實(shí)例;
要在后臺(tái)登陸;plsql中測(cè)試不行
Connected to:
Oracle Database 10g Enterprise Edition Release 10.2.0.4.0 - 64bit Production
With the Partitioning, Data Mining and Real Application Testing options
SQL !echo 123;
123
SQL !/billing/user/xufc/
Local directory now /billing/Balance/SP/REALINCOME/FTRANS
Interactive mode off.
-rw-r--r-- 1 500 500 823038 Feb 17 06:27 340000PTSVDA002012021714210800000000.gz
-rw-r--r-- 1 500 500 33 Feb 17 06:27 340000PTSVDA002012021714210800000000.md5
其中需要用絕對(duì)路徑;該腳本里面的內(nèi)容只是ls一下;就這樣了
第一步:創(chuàng)建腳本文件。
在Oracle數(shù)據(jù)庫(kù)重,創(chuàng)建腳本文件的方式很多。如可以直接在記事本中創(chuàng)建腳本文件,也可以通過(guò)SQL*Plus工具直接創(chuàng)建。不過(guò),筆者的意見(jiàn)是,在SQL*Plus中直接創(chuàng)建腳本文件的話,比較麻煩。這主要是因?yàn)樵赟QL*Plus工具中,命令編輯能力非常有效。如不能夠使用鍵盤(pán)上的箭頭鍵定位輸入的位置,不能夠使用DEL鍵刪除輸入的內(nèi)容等等。而且閱讀起來(lái)也比較困難。
第二步:編輯腳本文件。
在我們使用腳本文件的時(shí)候,往往需要根據(jù)實(shí)際情況,對(duì)其進(jìn)行稍微的調(diào)整。對(duì)腳本文件進(jìn)行編輯,也有兩種方式。一是通過(guò)SQL*Plus工具,二是第三方獨(dú)立的腳本編輯軟件。
對(duì)于一些調(diào)整不大的腳本文件,我們可以直接利用SQL*Plus工具打開(kāi),然后進(jìn)行編輯。但是,對(duì)于需要進(jìn)行大量修改的腳本文件,則筆者建議數(shù)據(jù)庫(kù)管理員采用第三方獨(dú)立的腳本編輯軟件。原因很簡(jiǎn)單,就如同上面所說(shuō)的那樣,SQL*Plus工具腳本命令編輯功能非常的薄弱。若采用這個(gè)工具對(duì)現(xiàn)成的腳本語(yǔ)句進(jìn)行編輯的話,則可能工作量還是重新編寫(xiě)一個(gè)來(lái)的輕。所以,數(shù)據(jù)庫(kù)管理員要根據(jù)實(shí)際的情況,選擇合適的腳本編輯工具。
另外,在編輯的過(guò)程中,要注意語(yǔ)法的正確性。特別是要注意,不能夠改變其固有的格式。如不要不小心刪除了最后的“/”符號(hào)結(jié)束。
第三步:運(yùn)行腳本文件。
腳本建立好之后,如何運(yùn)行腳本呢?在Oracle系統(tǒng)中也提供了許多方式。數(shù)據(jù)庫(kù)管理員可以根據(jù)自己的使用習(xí)慣來(lái)進(jìn)行選擇。
一是通過(guò)Start語(yǔ)句來(lái)調(diào)用腳本文件。其語(yǔ)法是Start Filemame[相關(guān)參數(shù)]。在運(yùn)行這個(gè)命令的時(shí)候,需要注意幾個(gè)問(wèn)題。
1、腳本文件的擴(kuò)展名問(wèn)題。上面在建立腳本文件的時(shí)候,筆者就跳掉過(guò),為了在SQL*Plus等工具中可以直接調(diào)用這個(gè)腳本文件,最好能夠把擴(kuò)展名改為Oracle數(shù)據(jù)庫(kù)能夠接受的擴(kuò)展名。默認(rèn)情況下,擴(kuò)展名設(shè)置為SQL即可。
2、腳本文件的路徑問(wèn)題。若用戶在利用Start調(diào)用腳本文件的時(shí)候,若沒(méi)有清楚的指名保存路徑的話,則SQL*Plus工具會(huì)現(xiàn)在當(dāng)前的目錄中進(jìn)行查找;若沒(méi)有的話,則會(huì)根據(jù)環(huán)境變量中確定的目錄中進(jìn)行查找。而一般情況下,我們把腳本文件都會(huì)獨(dú)立存放。所以,在使用Start命令執(zhí)行腳本文件的時(shí)候,最好能夠注明腳本文件的絕對(duì)路徑名。防止語(yǔ)句執(zhí)行錯(cuò)誤。
另外@命令也可以起到跟Start命令一樣的作用。只不過(guò),前者的使用范圍更廣一點(diǎn)。@命令可以脫離SQL*PLUS工具而使用。如可以直接在微軟操作系統(tǒng)中的命令行方式下使用。當(dāng)然,這操作系統(tǒng)要事先部署了Oracle數(shù)據(jù)庫(kù)環(huán)境。
二是可以直接利用SQL*Plus工具打開(kāi)文本文件,執(zhí)行腳本語(yǔ)句。然后點(diǎn)擊“文件”、“執(zhí)行”命令執(zhí)行這個(gè)腳本語(yǔ)句。這種方式的好處就是,系統(tǒng)會(huì)主動(dòng)提示用戶需要輸入的參數(shù)。
總之,腳本文件是我們管理Oracle數(shù)據(jù)庫(kù)的一大利器。我們好好利用腳本文件,可以提高Oracle數(shù)據(jù)庫(kù)的管理效率。畢竟,每次在需要的時(shí)候,都去編寫(xiě)命令是一件很麻煩的事情。而腳本文件的最大好處,就是可以提高語(yǔ)句的重復(fù)利用,節(jié)省我們編寫(xiě)語(yǔ)句、調(diào)試測(cè)試的時(shí)間。
批量插入數(shù)據(jù)腳本
1、第一種批量插入數(shù)據(jù)腳本,可以基本滿足要求。理解上較為簡(jiǎn)單,所以這個(gè)最常用。
NEXTVAL和CURRVAL的區(qū)別:
1、如果 sequence.CURRVAL 和 sequence.NEXTVAL 都出現(xiàn)在一個(gè) SQL 語(yǔ)句中,則序列只增加一次。在這種情況下,每個(gè) sequence.CURRVAL 和 sequence.NEXTVAL 表達(dá)式都返回相同的值,不管在語(yǔ)句中sequence.CURRVAL 和 sequence.NEXTVAL 的順序。
執(zhí)行腳本結(jié)果如下:
3、兩個(gè)表,同時(shí)批量插入數(shù)據(jù)的腳本
3、
4、 涉及子表時(shí),批量插入數(shù)據(jù)腳本,
5、 批量修改數(shù)據(jù) :
時(shí)間取數(shù)方式:
一、SYSTIMESTAMP(取當(dāng)前系統(tǒng)值)
二、SYSDATE(取當(dāng)前系統(tǒng)值,但只精確到時(shí),分和秒都為0)
三、固定值為:TO_TIMESTAMP ('2019-2-12 15:24:45.703000', 'yyyy-mm-dd hh24:mi:ss.ff6')
把固定的字段改為變量:
方式一:’||i||’ 例:’{“no”:“111’||i||’”}’(此方式)
方式二:concat 例:concat(concat(’{“blNo”:111"’,i),’"}’)
連接數(shù)據(jù)庫(kù)SQL connect / as sysdba
運(yùn)行腳本SQL @/admin/XX.sql 這里的/adminXX.sql 是絕對(duì)路徑名, linux系統(tǒng)的話要注意 目錄權(quán)限問(wèn)題,windows就不用。
當(dāng)前文章:oracle如何跑腳本 oracle怎么執(zhí)行腳本
當(dāng)前路徑:http://chinadenli.net/article8/hgphip.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供微信公眾號(hào)、企業(yè)網(wǎng)站制作、企業(yè)建站、虛擬主機(jī)、網(wǎng)站制作、軟件開(kāi)發(fā)
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)