十年網(wǎng)站開發(fā)經(jīng)驗 + 多家企業(yè)客戶 + 靠譜的建站團隊
量身定制 + 運營維護+專業(yè)推廣+無憂售后,網(wǎng)站問題一站解決
1.oracle數(shù)據(jù)庫有一個student表,現(xiàn)有一個excel表:student.xlsx,需導(dǎo)入oracle數(shù)據(jù)庫student表中。
我們提供的服務(wù)有:成都網(wǎng)站建設(shè)、成都網(wǎng)站設(shè)計、微信公眾號開發(fā)、網(wǎng)站優(yōu)化、網(wǎng)站認證、雨山ssl等。為近1000家企事業(yè)單位解決了網(wǎng)站和推廣的問題。提供周到的售前咨詢和貼心的售后服務(wù),是有科學(xué)管理、有技術(shù)的雨山網(wǎng)站制作公司
student表的擁有者是system,system密碼為test。
2.打開需導(dǎo)入的excel表格,單擊office按鈕,選擇另存為--其他格式。
選擇保存路徑(置于D:\),保存類型CSV(逗號分隔)(*.csv),設(shè)置文件名為student.csv,單擊保存 。
3.新建input.ctl文件(置于D:\),內(nèi)容為:
load data
infile?'d:\student.csv'
append?into?table student?fields terminated by ','
trailing nullcols(id,name,sex,age)
說明:infile后面參數(shù)為欲導(dǎo)入的excel表(已轉(zhuǎn)換成csv格式)路徑及名稱;append在表后追加;table后面跟oracle數(shù)據(jù)庫中的表名稱; terminated by ','表示字段分隔符;(id,name,sex,age)表示字段名稱列表。
4.同時按Windows徽標(biāo)鍵和R鍵,打開運行,輸入cmd,打開命令提示符,輸入命令:
sqlldr userid=system/test@netservicename control=d:\input.ctl
說明:system/test,為oracle數(shù)據(jù)庫表student的所有者及其密碼;
@? netservicename為網(wǎng)絡(luò)服務(wù)名;
control是input.ctl文件名稱及路徑。
5.進入oracle數(shù)據(jù)庫,查詢student表,excel已導(dǎo)入成功。
輸入l 命令,查看歷史執(zhí)行命令,然后可以用c /one/two 進行將One替換成two?;蛘?a one進行追加one。修改完成后,輸入/就可以重新執(zhí)行了。
Oracle讀取數(shù)據(jù)的最大限制取決于操作系統(tǒng)和Oracle對多塊讀IO的限制。在物理上來說,一個SQL語句要讀取某個記錄,必須將該記錄讀取到DB CACHE中,然后才能從DB CACHE中獲取,這種訪問我們一般稱為物理讀(READ),如果這個數(shù)據(jù)已經(jīng)存在于DB CACHE中,那么前臺進程可以直接從DB CACHE中讀取數(shù)據(jù),這樣的讀取成為邏輯讀(GET),如果要讀取的數(shù)據(jù)已經(jīng)被修改,需要從UNDO中讀取前映像來獲取一致性的數(shù)據(jù),那么會從UNDO中取出前映像,和當(dāng)前的數(shù)據(jù)塊一起形成一個一致性讀塊(CR BLOCK),然后再從CR BLOCK中讀取數(shù)據(jù),這種訪問方式稱為一致性讀(CR GET)。 從邏輯上講, Oracle讀取數(shù)據(jù)通過三種途徑:全表掃描( Full Table Sacn,FTS )、引掃描、通過ROWID直接訪問。在閱讀SQL執(zhí)行計劃的時候,可以通過 TABLE ACCESS子句來查看Oracle訪問某個表的方法,一般來說,對于大型的表來說,如果出現(xiàn) TABLE ACCESS FULL 的提示,是需要加以重視的,一般情況下,對于大表的全表掃描應(yīng)該是盡量避免的。下面是一個簡單的執(zhí)行計劃:Query Plan----------------------------------------- SELECT STATEMENT [CHOOSE] Cost=1234 TABLE ACCESS FULL LARGE [:Q65001] [ANALYZED]查看SQL的執(zhí)行計劃的時候,最右邊的,最上面的操作是首先被執(zhí)行的,上面的例子只有一個操作,就是對表“LARGE”進行全表掃描。當(dāng)這個步驟執(zhí)行完畢后,就會將結(jié)果集返回給上面一層的語句,上面的例子就是 SELECT STATEMENT 這個語句,一般來說 SELECT STATEMENT 是整個執(zhí)行計劃的頂層。 [CHOOSE]表明這個SQL語句的OPTIMIZER_GOAL ,在這個提示的右側(cè)是COST數(shù)據(jù),如果COST是有實際值的,那么說明使用了CBO優(yōu)化器,如果COST沒有實際值,那么說明使用了RBO優(yōu)化器。比如: SELECT STATEMENT [CHOOSE] Cost=COST只是一個相對的值,只是優(yōu)化器用來分析訪問路徑的優(yōu)劣的,相同的SQL, COST越小的執(zhí)行計劃,起執(zhí)行效果越好,開銷越小。而不同的SQL ,其COST值是沒有可比性的。 [:Q65001]指明這部分操作被采用并行查詢的方式執(zhí)行,