Oracle11g學習筆記一_第1頁
Oracle11g學習筆記一_第2頁
Oracle11g學習筆記一_第3頁
已閱讀5頁,還剩3頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、、服務1、Oracle 服務 有很多 ,最重 要的有兩 個: OracleOraDb11g_home1TNSListener 和 OracleServiceORCL 。2、由于服務眾多,如果全部默認自動啟動的話會導致開機非常的緩慢,而且有些服務 并不是經(jīng)?;蛘弑仨氁?,可以改為手動啟動以緩解開機壓力。3、OracleServiceORCL 服務是 oracle 的主服務比較大而且最好設為自動啟動。4、OracleOraDb11g_home1TNSListener 服務是 oracle 的監(jiān)聽服務也是必須開啟的。5、監(jiān)聽服務很容易出錯,主要在于兩方面:注冊表的誤操作和網(wǎng)絡環(huán)境的變更。6、注冊表誤

2、操作主要指的是使用系統(tǒng)優(yōu)化軟件,優(yōu)化軟件將注冊表清空,導致服務無 法開啟。7、網(wǎng)絡環(huán)境的變更主要指的是計算機名的改變,在oracle 10g 之前在修改主機名生效后,監(jiān)聽五服務就會無法正常啟動( 11g 以后會自動識別) 。這種時候就需要進行手動 配置了,修改 listener.ora 和 s=tnsnames.ora 兩個配置文件,將文件中的 HOST= 原主機 名修改成現(xiàn)主機名即可。8、需要外部程序訪問數(shù)據(jù)庫的時候要進行網(wǎng)絡管理配置,打開Oracle自帶的Oracle NetManager軟件可進行設置,Oracle Net設置-> 本地-> 監(jiān)聽程序->數(shù)據(jù)庫服務-&g

3、t;添加數(shù)據(jù)庫 然后修改數(shù)據(jù)庫的全局數(shù)據(jù)庫名和 SID 即可(需與本地數(shù)據(jù)庫同名?)二、工具1、 數(shù)據(jù)庫操作的命令用 sqlplus 完成, sqlplus 的兩種形式: sqlplus.exe 純命令行模式和 sqlplus w 帶窗口的操作環(huán)境(較為常用) 。2、 在登錄的時候可以選擇主機字符串,在sqlplus命令行操作中是默認選擇為空。當有多個數(shù)據(jù)庫的時候,就要選擇相應的數(shù)據(jù)庫的主機字符串(即數(shù)該數(shù)據(jù)庫名稱)。3、 在 sqlplus 中操作數(shù)據(jù)庫既可以直接敲響應命令直接執(zhí)行,也可以使用ed 和來執(zhí) 行命令。4、 執(zhí)行本地硬盤中的程序文件需要在后加上完整的路徑(包括后綴名) 。但是如果

4、 文件的后綴名是 .sql 的話可以省略。5、 登錄用戶切換命令: conn 用戶名 /密碼 _on_install as sysdba方括號內(nèi)的命令可以省略,指定為操作者身份還是管理員身份。6、每一張表都有其所屬于的用戶。所以當前用戶要訪問其他用戶的表就必須加上完整 的表名稱用戶名 .表明稱(或者:模式名 .表名稱)如: select * from scott.emp ;7、使用超級管理賬戶可以手動控制數(shù)據(jù)庫實例的打開和關閉。a)shutdown immediate;執(zhí)行這個命令就會關閉數(shù)據(jù)庫實例,此時關閉 sqlplus 之后再打開就已無法登錄到 數(shù)據(jù)庫了(所有帳號都是)b)startup

5、;啟動數(shù)據(jù)庫實例,這里發(fā)生了點小插曲按照 MLDN視頻教程上所說,輸入用 戶名為: /nolog ,需密碼進行登錄。但是我愛 sqlplus 命令行界面下無法登錄。后采 用了一下方法成功啟動數(shù)據(jù)庫實例: win+R 運行快速啟動,輸入: sqlplus /nolog 這 樣子就可以直接登錄了,然后切換到sys用戶運行startup命令即可。8、sqlplus可以通過host命令作為前綴調(diào)用本機的操作系統(tǒng)命令,如:Host copy d:demo.sql d:hello.txt ;9、格式化命令:設置命令行窗口每行顯示記錄的長度: set linesize 300 ; 設置命令行窗口顯示的記錄長

6、度: set pagesize 30 ;三、總結1、數(shù)據(jù)庫的安裝 2、數(shù)據(jù)庫的賬戶(常見) : 密碼約定成俗 |-sys/oracle|-sys/oracle|-scott/oracle|-無|-sys/change_on_install|-system/manager|-scott/tiger|-sh/sh (無特殊規(guī)定 )3、sqlplus 操作4、監(jiān)聽服務的錯錯誤四、SQL 語法SCOTT 用戶下的表結構1、在Oracle學習之中重點使用的是 SQL語句,本次學習中主要都是 scott用戶下進行, 該用戶下有 4張表: BONUS、 DEPT、 EMP、 SALGRADE2、查看表的結構

7、DESC EMP ;蠱rlr s名稱EMPNO ENA MEJ心甘H«KHIRE1MTESALCOMMBEPTHO是否為仝孑婁塑HOT HULL NUHBEK<4>UARCF1AR2<±8> UA RUHI 口H乂丈孕鼻KIFIUEH<4> IM1TENUNBEFC7.2> NUHBERC7I.2> NUHBER<2>3、部門表:deptNO.名稱類型描述1DEPTNONUMBER(2)表示部門編號由兩個數(shù)字組成2DNAMEVARCHAR2(14)表示部門字符最多由14個字符組成3LOCVARCHAR2(13)部門

8、所在的位置4、雇員表NO.名稱類型描述1EMPNONUMBER(4)表示雇員的編號由4未數(shù)字組成2ENAMEVARCHAR2(10)表示雇員的姓名又 10位組成3JOBVARCHAR2(9)雇員的職位最多9個字符4MGRNUMBER(4)雇員對應的領導編號5HIREDA TEDATE雇員被雇傭的日期6SALNUMBER(7,2)基本工資,其中有 2為小數(shù)5位整數(shù)7COMMNUMBER(7,2)獎金(傭金銷售才有)8DEPTNONUMBER雇員所在的部門編號5、工資等級表NO.名稱類型描述1GRADENUMBER工資的等級2LOSALNUMBER此等級的最低工資3HISALNUMBER此等級的最

9、高6、工資表(類似于工資條暫時用不到 )NO.名稱類型描述1ENAMEVARCHAR2(10)雇員姓名2JOBVARCHAR2(9)雇員工作3SALNUMBER雇員工資4COMMNUMBER雇員獎金查詢1、簡單查詢Oracle是時間上最早采用 SQL語句的的數(shù)據(jù)庫。SQL語言功能強大,分為一下3組:A)DML(數(shù)據(jù)操作語言)用于檢索或修改數(shù)據(jù)B)DDL (數(shù)據(jù)定義語言)一一用于定義數(shù)據(jù)的結構,如創(chuàng)建、修改或刪除數(shù)據(jù)庫對象C)DCL (數(shù)據(jù)控制語句)一一用于定義數(shù)據(jù)庫用戶權限 簡單查詢表示查詢表內(nèi)所有數(shù)據(jù)2、在簡單查詢中可以進行四則運算;3、DISTINCT可去掉重復記錄:SELECT DIST

10、INCT job FROM emo ;4、別名在進行簡單查詢的時候,顯示結果列的上方出現(xiàn)的是運算式,可以通過設置別名來替換。SELECT en ame,sal,comm,sal*12 FROM emp ;SELECT en ame,sal,comm,sal*12 in come FROM emp ;此時就會顯示出自定義的別名而不是sal*12(盡量避免使用中文)E4L> SELECT enane,sal,conn,FR0H enp ;SELFCI eMW .(aLEon.SAlfdlinnu FHOFI 鼻叩;HONEEHAFUGALcomGAL-12FNft旺SALCOWSMITH80

11、S?NTTH<(N9EQ6ALLEN39019JB0ILUOIIhUM:)M4舶RD12505»e15909WARD15«NJONEE2975357WJOMESZ97535700MAUIIN1480HE900NA RIEM価E140615BLAKE285934200BUKE2應woectmCTJRK24SRRCffTT那胴亞翊scoii訓刪3bBIMKINGKING50MIUKUR15刪»TUfiNEE0RDAns炳幗11MJflNEE95811489JAIKS9騙1HNFORD3690SFOKD測腳3MIMHILLER133915&09MILLER

12、BQ0ism5、在簡單查詢中也常用|鏈接查詢字段SELECT emp n| ','e name|' 'job FROM emp ;在SQL語句中,屬于原樣輸出符,需要用括出來。表示是字符串。限定查詢在之前的簡單查詢之中,是將所有的記錄進行顯示,但也可以對顯示的記錄進行過濾操作,這就是先定查詢。1、限定查詢就是在之前查詢的基礎上增加了一個WERE子句,用于指定限定條件,此時語法如下:SELECT DISTNCT *|字段別名,字段別名FROM表名稱別名WHERE 條件(s);在WHERE子句之后可以添加多個條件,最常見的條件就是基本的關系運算:> ,>

13、=,<,NOT ;<=, |=, BETWEEN.AND, LIKE, IN, IS NULL, AND, OR, 2、范圍判斷: BETWEEN.AND.a) 查 詢 基 本 工 資 在 1500AND3000 之 間 : SELECT * FROM WHERE sal BETWEEN 1500 AND 3000 ;b) 求反操作: SELECT * FROM emp WHERE NOT sal BETWEEN 1500 AND 3000 ;c)對日期進行操作: SELECT * FROM emp WHERE hiredate BETWEEN01-1 月-81'AND 3

14、1-12 月 -81';3、判斷是否為空: IS( NOT ) NULL 使用次愈發(fā)可以判斷某個一字段的內(nèi)容事都是“ null ”,但是 null 和數(shù)字 0 和空字 符串不不同的概念。4、指定范圍的判斷: IN 操作符IN 操作符表示指定一個查詢范圍。如:查詢雇員編號是7369、7566、7799 的雇員信息。SELECT * FROM emp WHERE empno IN(7369,7566,7799) ; 上述代碼表示在三個編號中選擇, NOT IN 表示不再此范圍內(nèi)。注意,在 IN 操作 符中存在 null ,不影響最后結果,但是在 NOT IN 中,如果可選范圍中含有 nul

15、l 值則結 果是無任何返回值, NOT IN 中出現(xiàn) null 表示的就是查詢?nèi)繑?shù)據(jù)。5、模糊查: LIKE 子句LIKE 子句的功能是提供了模糊查找的操作,例如:某些程序上的搜索操作,都屬于LIKE子句的實現(xiàn)。但是搜索引擎的查詢不會死LIKE。LIKE只會在要求性能不高的情況下使用。匹配符: |-匹配單個字符: _ |-匹配任意多個字符: %SELECT * FROM emp WHERE ename LIKE A% '查詢雇員名字首字母為 A的 全部信息6、數(shù)據(jù)排序 語法如下:SELECT DISTNCT *| 字段 別名 ,字段 別名 FROM 表名稱別名WHERE 條件( s)

16、 ORDER BY 字段 ASC | DESC, 字段 ASC | DESC;“ORDER BY ”子句寫在所有的 SQL 語句的最后。 |-排序的時候可以指定多個排序字段 |-排序的方式有兩種:升序(ASC):默認,不寫也是升序;降序(DESC):用戶需要指定,由大到小排序。SELECT * FROM emp ORDER BY sal ;單行函數(shù)1、概念 雖然各個數(shù)據(jù)庫都是支持 SQL 語句的, 但是每一個數(shù)據(jù)庫都有自己所支持的操作函數(shù), 這就是單行函數(shù)。2、分類 單行函數(shù)分為以下 5 類:字符函數(shù)、數(shù)字函數(shù)、日期函數(shù)、 轉換函數(shù)、通用函數(shù) 。3、字符函數(shù)主要進行字符串的操作,例如:UPPE

17、R(字符串|列):將輸入的字符串變成大寫返回LOWER (字符串 |列):將輸入的字符串變成小寫返回 INITCAP (字符串 |列):開頭首字母大寫LENGTH (字符串 |列):求出字符串的長度 REPLACE (字符串 |列):替換SUBSTR (字符串列,開始點,結束點):字符串截取4、oracle 中要求必須編寫完整的 SQL 語句,所以在 Oracle 中為了用戶查詢的方便,提 供了一個“dual”的虛擬表。5、 Q:SUBSTR() 函數(shù)截取字符串的時候,下標是從0 還是 1開始的?A :在Oracle數(shù)據(jù)庫之中,SUBSTR()函數(shù)從0或1開始都是一樣的; 同時該函數(shù)也可以設置

18、為負數(shù),便是由后向前指定截取開始點。6、數(shù)字函數(shù)對數(shù)字進行操作,例如:ROUND (數(shù)字 |列,保留的小數(shù)的位數(shù) ):四舍五入;TRUNC (數(shù)字|列,保留的小數(shù)點位數(shù) ):舍棄指定位置的內(nèi)容;MOD (數(shù)字1,數(shù)字2):取模,取余數(shù)7、日期函數(shù)是對日期進行的操作,例如:查詢當前的系統(tǒng)時間:SELECT SYSDATE FROM dual;可以進行的操作:日期 +數(shù)字、日期 -數(shù)字、日期 -日期8、日期操作的函數(shù):LAST_DAY( 日期) :求出指定日期所在月份的最后一天 ;NEXT_DAY( 日期,星期數(shù) ):求出下一個指定星期 X 的日期;ADD_MONTHS( 日期,星期數(shù) ):求出若

19、干個月之后的日期;MONTHS_BETWEEN( 日期 1,日期 2):求出兩個日期之間經(jīng)歷的月份轉換函數(shù)1 、概念Oracle的三種數(shù)據(jù):數(shù)字(NUMBER )、字符串(VARCHAR )、日期(DATE);轉 換函數(shù)主要功能是完成幾種數(shù)據(jù)之間的相互轉換操作2、分類TO_CHAR(字符串|列,格式字符串):將日期或是數(shù)字變?yōu)樽址@示; TO_DATE(字符串,格式字符串):將字符串變?yōu)?DATE數(shù)據(jù)顯示; TO_NUMBER(字符串):將字符串變?yōu)閿?shù)字顯示。3、TO_CHAR 函數(shù)當查詢系統(tǒng)時間時,輸入: SELECT SYSDA TE FROM dual ;回顯:select s:mis

20、date Fvoni dualpVSDftTEX 月-14QL>會按照“日-月-年的格式回顯”,可以使用TO_CHAR()函數(shù)改變格式:SELECT TO_CHAR(SYSDA TE , 'yyy-mm-dd 'FROM dual ;同樣,也可以單獨進行拆分:SELECT TO_CHAR(SYSDA TE , 'yyyy 'FROM dual ;SELECT TO_CHAR(SYSDA TE , 'mm 'FROM dual ;SELECT TO_CHAR(SYSDA TE , 'dd'FROM dual ;但這樣顯示也還會有一個問題:前導0.此時加入fm標記即可(即'myyyy-mm-dd ')。4、時間Oracle中DATE里面是包含時間的, 但在默認情況下是不現(xiàn)實的,可以通過添加下面的標記實現(xiàn):SELECT TO_CHAR (SYSDATE 'yyy-mm-dd hh24:mi:ss 'F

溫馨提示

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

評論

0/150

提交評論