Oracle2基礎(chǔ)2ppt課件_第1頁
Oracle2基礎(chǔ)2ppt課件_第2頁
Oracle2基礎(chǔ)2ppt課件_第3頁
Oracle2基礎(chǔ)2ppt課件_第4頁
Oracle2基礎(chǔ)2ppt課件_第5頁
已閱讀5頁,還剩21頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

1、Oracle學(xué)習(xí)(二).Oracle - 主要數(shù)據(jù)類型 Character數(shù)據(jù)類型Long數(shù)據(jù)類型用于存儲可變長度的字符數(shù)據(jù),最大大小為2GB.Long數(shù)據(jù)類型的某些特征與Varchar2類似,當需求遵照以下限制:表中只需一列可以為long數(shù)據(jù)類型Long列不能定義為獨一或主鍵約束不能在Long列上建立索引過程或存儲過程不能接受long數(shù)據(jù)類型作為參數(shù)Varchar2數(shù)據(jù)類型(可變長)它支持可變長度的字符串.此數(shù)據(jù)類型的大小范圍介于(1到4000個字節(jié)之間),比Char節(jié)省空間等價與ASNI定義的Varchar數(shù)據(jù)類型Char數(shù)據(jù)類型(定長字符串),但當需求定長的字符串時,可以運用Char數(shù)據(jù)

2、類型.(12000個字節(jié)之間)假設(shè)輸入長度小于指定長度,那么數(shù)據(jù)庫會運用空格填補方式到達固定長度.Oracle - 主要數(shù)據(jù)類型Raw和Long Raw 數(shù)據(jù)類型一個表中只能有一個該類型的字段,不能作為主鍵用于存儲二進制數(shù)據(jù)的數(shù)據(jù)類型Raw數(shù)據(jù)類型用于存儲面向字節(jié)的數(shù)據(jù),如二進制數(shù)據(jù)或字符串,此數(shù)據(jù)類型的最大大小為2000個字節(jié),運用該數(shù)據(jù)類型的時候,應(yīng)該設(shè)置其大小Log Raw數(shù)據(jù)類型Long Raw數(shù)據(jù)類型存儲可變長度的二進制數(shù)據(jù),它的最大大小可以為2GB .Oracle - 主要數(shù)據(jù)類型LOB數(shù)據(jù)類型LOB也稱為Large Object數(shù)據(jù)類型.可以存儲非構(gòu)造化的信息,如聲音、圖片、視頻

3、文件,它的最大大小可以為4GBCLOB 表示Character LOB(字符LOB) 可以存儲大量的字符數(shù)據(jù)。BLOB 表示 Binary LOB(二進制LOB)可以存儲大型二進制對象BFILE 表示Binary File(二進制文件),用于操作系統(tǒng)文件中存儲的二進制文件.Oracle - 主要數(shù)據(jù)類型Date數(shù)據(jù)類型Datatime數(shù)據(jù)類型用于存儲日期值和時間值TIMESTAMP用于存儲年、月和日等日期值以及小時、分鐘和秒等時間值。INTERVAL DAY TO SECOND此數(shù)據(jù)類型用于將時間存儲為日、小時、分鐘直至秒的時間間隔IntervalDayToSecond.javaINTERVA

4、L YEAR TO MONTH 存儲年和月的時間間隔TIMESTAMP WITH TIME ZONE表示日期和時間值,及其相關(guān)的時區(qū)設(shè)置TIMESTAMP WITH LOCAL TIME ZONE 存儲數(shù)據(jù)時將被規(guī)范化為數(shù)據(jù)庫時區(qū). 事務(wù)處置數(shù)據(jù)庫對所做的一切修正都稱為事務(wù)處置。只需將事務(wù)處置修正提交后,才干永久的修正數(shù)據(jù)庫中的信息DDL語句,自動的進展事務(wù)處置不需求我們操作COMMIT假設(shè)操作勝利,那么借助COMMIT命令,才干對數(shù)據(jù)庫進展永久的事務(wù)處置修正ROLLBACK用于吊銷在當前事務(wù)處置中所執(zhí)行的操作ROLLBACK TO SAVEPOINT save_pt - 回退到某個保管點SA

5、VEPOINT保管點類似于標志,它將很長的事務(wù)處置劃分為較小的事務(wù)處置。用于標識以后可以回滾到的事務(wù)處置中的點.SQL查詢函數(shù)單行函數(shù)日期函數(shù)Add_months - 對指定日期添加指定的月數(shù)后前往一個日期add_months(d,m) - d是日期,m是月數(shù)Last_day - 前往月末最后一天相應(yīng)的日期last_day(d)Months_between - 兩個日期之間月份數(shù)months_between(d1,d2)Round - 前往日期,并詞日期舍入到格式方式所指定的單位round(d,fmt) - 默許情況下舍入到最近的日期(年以7月1日,日以16日為分水嶺)Next_day - n

6、ext_day(d, day)d表示日期,day表示一個星期的恣意一天.SQL查詢函數(shù)日期函數(shù)Truncate - 前往日期,其時間部分截斷為格式模型所指定的單位Trunc(sysdate,year) 截斷結(jié)果為 當月的1號,如01-jan-04Trunc(sysdate, month) 截斷結(jié)果為當月的1號, 如01-jan-04Trunc(sysdate,date)截斷到最近的星期天Trunc(sysdate) 舍入到最近的天,即sysdateGreatestGreatest(d1,d2,)該函數(shù)前往最晚日期New_time顯示日期列或日期常數(shù)在其他時區(qū)的時間和日期new_time(dat

7、e,this,other)其中this為當前時區(qū)的三個縮寫字母,而other是由目的日期所在的時區(qū)的三個縮寫字母,如:new_time(13-feb-05,est,yst).SQL查詢函數(shù)字符函數(shù)Initcap(char) - 將首字母轉(zhuǎn)化為大寫Lower(char) - 將查詢信息全部轉(zhuǎn)化為小寫Upper(char) 將查詢信息全部轉(zhuǎn)為大寫Ltrim(char,set) 從左邊起將字符中的與set一樣的一段交換為空格(截取掉)Rtrim(char,set) 從右邊起將字符中的與set一樣的一段交換為空格(截取掉)Translate(char, from, to) 將字符中的那些字交換掉Rep

8、lace(char, searchstring, rep string) 將字符串中的一切與searchstring一樣的字符交換為rep string字符Substr(char, m, n) 截取字符Concat(expr1, expr2) 合并兩個字符信息.SQL查詢函數(shù)字符函數(shù)LPAD 填充函數(shù)LPAD(function, 8,=) 從左邊起填充RPAD(function, 9, =)從右邊起填充Decode逐行交換值Decode(字符, 成立條件,交換內(nèi)容)Length函數(shù)前往一個字符串的長度.SQL查詢函數(shù)數(shù)字函數(shù)Abs 前往絕對值Ceil 舍去小數(shù)floor(n) 小于等于數(shù)值n的

9、最大整數(shù)round(n,m) 將n四舍五入,保管小數(shù)點后m位Power(m,n) 某函數(shù)的次方Mod(m,n)函數(shù)前往一個值除以另一個值后的余數(shù)Sign前往值的符號負數(shù)為-1.SQL查詢函數(shù)轉(zhuǎn)換函數(shù)To_char(d, n,fmt) d是日期、n是數(shù)字、fmt是指定日期格式的格式模型To_char(date,YYYY-MM-DD hh24:hi:ss)To_char(itemrate, $99,999)To_date(char, ,fmt)將字符串轉(zhuǎn)化為日期To_number函數(shù)可以將包含的字符轉(zhuǎn)化為數(shù)字.SQL查詢函數(shù)常規(guī)函數(shù)NVL(exp1, exp2)假設(shè)exp1為null,那么nvl將

10、前往exp2,否那么只前往exp1,假設(shè)exp1與exp2不為同一類型,那么oracle會將exp2自動轉(zhuǎn)化為exp1類型NULLIF(exp1, exp2) 假設(shè)exp1等于exp2那么前往空NVL2(exp1, exp2, exp3)假設(shè)exp1不為空,那么前往exp2假設(shè)exp1為空,那么前往exp3COALESCE(exp1,exp2,exp3.expn)前往列表中第一個非空表達式.集合操作符Union前往查詢所選定的一切的行,去反復(fù)的Select orderno from order_masterUnionSelect orderno from order_detailUnion a

11、ll前往兩個查詢所選定的一切行,包括反復(fù)行Select orderno from order_masterUnion allSelect orderno from order_detailIntersect 僅前往兩個查詢都有的行Select orderno from order_masterIntersectSelect orderno from order_detailMinus前往僅由第一個查詢選定并且沒有被第二個查詢選定的一切不同行Select orderno from order_masterMinusSelect orderno from order_detail.Oracle-視

12、圖視圖是一個經(jīng)過定制的表示方式,用來顯示包含在一個或多個表或其他試圖中的數(shù)據(jù)。視圖獲取查詢的輸出結(jié)果,并將其作為表來處置??梢砸暈椤耙汛鎯Φ牟樵兓颉疤摂M表Create OR REPLACEFORCE/NOFORCE VIEW viewAs subqueryWITH CHECK OPTION CONSTRAINT constraint WITH READ ONLY CONSTRAINT constraint;.Oracle-視圖OR REPLACE:假設(shè)視圖已存在,此選項將重新創(chuàng)建該視圖FORCE:無論基表能否存在,都將創(chuàng)建視圖NOFORCE:這是默許值,僅當基表存在的時候才創(chuàng)建視圖VIEW 表

13、示要創(chuàng)建的視圖稱號WITH CHECK OPTION:只能插入或更新視圖可以訪問的行。術(shù)語constraint表示為CHECK OPTINON約束指定的名字WITH READ ONLY:確保不能在此視圖上執(zhí)行任何DML操作.Oracle-視圖Oracle還可以經(jīng)過聯(lián)接多個表來創(chuàng)建視圖,任何UPDATE、INSERT或DELETE語句都只能修正一個底層的基表(不過可以經(jīng)過INSTEAD OF 觸發(fā)器實現(xiàn)操作).Oracle-視圖視圖中還可以運用單行函數(shù)(由數(shù)字、字符、日期組成)、分組函數(shù)和表達式視圖的查詢不能選擇偽列假設(shè)視圖的查詢中包含聯(lián)接鍵保管表除外、集合操作符、分組函數(shù)或DISTINCT子句

14、,那么不能執(zhí)行刪除、更新和插入操作在視圖中所作的修正將影響基表,反之亦然分組函數(shù)和GROUP BY子句也可以包含在視圖中運用函數(shù)時,應(yīng)為列指定一個別名,如上面的例如所示.Oracle - 視圖分區(qū)視圖-數(shù)據(jù)存儲在單獨的表中。在運轉(zhuǎn)期間,經(jīng)過運用關(guān)系操作符UNION ALL,可以將這些表結(jié)合起來。刪除視圖 - Drop VIEW命令.Oracle-序列序列是Oracle提供的一個對象,可以用來生成獨一、延續(xù)的整數(shù)Create sequence seqINCREMENT BY n-序列號之間的間隔START WITH n - 第一個序列號MAXVALUE n/NOMAXVALUE - 可生成的最大

15、值MINVALUE n/NOMINVALUE - 序列最小值CYCLE/NOCYCLE - 當序列到達最小或最大值后能否重新開場生成值CACHE n/NOCACHE; - 能否運用緩存.Oracle-序列訪問序列Oracle提供了currval和nextval偽列來訪問該序列的值Nextval - 創(chuàng)建序列后第一次運用nextval的時候,將前往該序列的初始值,以后每次援用nextval 時,將運用increment by子句的值來添加序列值,并前往這個新值Currval - 前往序列的當前值.Oracle-序列修正序列經(jīng)過alert sequence語句來修正序列定義設(shè)置或刪除MINVALU

16、E或MAXVALUE修正增量值修正緩存中的序列號的數(shù)目不能包含 start with參數(shù)值A(chǔ)lter sequence sequINCREMENT BY nMACVALUE n/ NOMAXVALUEMINVALUE n/ NOMINVALUECYCLE/NOCYCLECACHE n/NOCACHE;.Oracle-序列刪除序列Drop sequence sequ.Oracle - 偽列Oracle提供了一種在表構(gòu)造中不實踐存在列,稱為偽列NextvalCurrvalROWNUM oracle系統(tǒng)順序分配為從查詢前往的行的編號當不能已其他表的別名來做前綴名ROWIDrowid就是獨一標志記錄物理位置的一個id data_object_id#+rfile#+block#+row#組成,占用10個bytes的空間LEVEL僅僅用在對表執(zhí)行層次樹遍歷的SELECT語句中,運用START WITH和CONNECT BY子句LEVEl把樹的當前層次作為一個NUMBER數(shù)值前往.Oracle - ROWNUM的運用只

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論