摘要: 關系數據庫設計之時是要遵守一定的規則的,尤其是數據庫設計范式。現簡單介紹1NF(第一范式),2NF(第二范式),3NF(第三范式)和BCNF,另有第四范式和第五范式留到以后再介紹。在你設計數據庫之時,若能符合這幾個范式,你就是數據庫設計的高手。 閱讀全文
摘要: 轉一篇Kimberly Floss的文章,介紹了DBMS_MONITOR這個包,用原話說就是:New tools help you better understand the performance of your applications.
閱讀全文
閱讀全文
摘要: 借Tom這篇用來說明別的問題的文章來學習一下TKPROF的用法。 閱讀全文
摘要: Tkprof工具可用來格式化sql trace產生的文件,讓你更容易看懂trace的內容
閱讀全文
閱讀全文
摘要: 今天在操作視圖的時候發生了一個錯誤:ORA-01732: data manipulation operation not legal on this view 其實視圖的更新是有很多的限制的,例如不能有聚合函數、分析函數、排序函數等等,而且如果兩個表關聯后的視圖,則只能更新第一個表的字段等等。具體的說明可以在《SQL Reference》里找到,如下:
閱讀全文
閱讀全文
摘要: 最近一直受困于一些Log的操作問題,很多問題都被集中遇到了,于是收集了各種資料,進行一下統一的學習。從自己遇到問題的幾個方面做了解答。很多資料來自ASKTOM。這是很有用也很重要的內容。 閱讀全文
摘要: 學習一下Oracle自帶的AnyData Type。這個特性是在9i之后加入的,主要是為了能夠在存儲不同類型的數據之后,取數時可以區分出來。相比把所有數據類型都存儲到varchar2中,使用anydata可以自主判斷數據類型之后取出,增加自動化程度。使用也不是非常復雜,見下例:
閱讀全文
閱讀全文
摘要: Tom的一個比較SQL性能的小工具,就是在《9i10g編程藝術》里面第一章放的工具,今天重新看了一下,發現還是挺有用的,貼上來以后SQL tuning中可以使用一下。
閱讀全文
閱讀全文
摘要: 最近學到update的另一種寫法,是以前自己從來沒有使用過的,看了一下文檔,也沒有找到很詳細的說明。這種update方式其基礎是建立在Query中的,所以可以確保使用CBO而非RBO,可以在大表的更新時明顯得提高效率。在這里記錄一下基本的方法: 閱讀全文
摘要: 這篇文章舉例說明了大表在各種存儲模式下進行查詢時的執行計劃。不同的字段查詢會形成相對應的執行計劃,而且對于索引的INDEX FAST FULL SCAN也有一個舉例,對全表掃描和快速索引掃描有很好的說明用處。非常牛逼! 閱讀全文
摘要: Tom的下面兩段SQL都寫得比較好玩,沒有用到很復雜的函數,主要是思路很受益。第一段SQL的題目比較新奇,以前沒遇到過這樣的情況,Tom的答案也比較規整,基本就是自己創建一個標志位,然后在外層向左推進一位,當然用PLSQL肯定可以有更加便捷的方法。第二段SQL主要是中間的那句的思路,換我的話估計就是sum()over()之后再sign+decode了,用least+greatest真的比較精彩的邏輯。 閱讀全文
摘要: 今天繼續來學習一下SQLPLUS中的Report函數。這個在工作中使用到的機會不多,但是做好之后把結果打印出來看著會很爽。
參考文檔:《SQL*Plus User's Guide and Reference Release 10.2 B14357-01》 閱讀全文
參考文檔:《SQL*Plus User's Guide and Reference Release 10.2 B14357-01》 閱讀全文
摘要: 學習一下ratio_to_report函數,這個函數今天才遇到,以前都沒有注意。主要是用來進行比例的統計的,也算是一個基礎的統計函數,格式也沒有什么特別的,只在這里做一個簡單的記錄。 閱讀全文
摘要: Oracle可以將Update和Insert操作合并為一個MERGE操作。第一可以更加方便操作、簡化邏輯,第二在Oracle的內部進行了效率的優化。 閱讀全文
摘要: UE默認的安裝中是沒有PLSQL的顯示模式的(至少我安裝的版本沒有),所以需要自己手動進行設置,設置方法如下:
閱讀全文
閱讀全文
摘要: 今天來學習兩個SQLPlus中的參數。 閱讀全文
摘要: 當發生臨時表空間不夠時,可以用以下語句來創建一個比較大的臨時表空間(各個文件可以創建到不同的磁盤以備用)
閱讀全文
閱讀全文
摘要: Tom的這篇文章介紹了Oracle在不同的情況下,使用RBO和CBO對執行計劃的影響。以及在CBO下,對于TABLE的不同大小而產生的變化。在最后還介紹了一下使用現有執行計劃對于條件過濾之后記錄數的多少而形成的不同情況,也回答了我以前的一些困擾。但是具體到底多少記錄占比會使CBO發生變化還是不得而知。另外也可以看一下關于DBMS_STATS包的應用方法,這個包還是很有用的,就是比較復雜一些。
閱讀全文
閱讀全文
摘要: 對于Oracle的轉義字符,對然了解,但是一直不是很明白。而且在SQLPlus下的ESCAPE還和函數ESCAPE不是一個意思,更加容易搞混,所以專門來學習一下。首先可以通過幾個簡單的例子來了解一下這個函數在SQL中的用法。 閱讀全文
摘要: 最近在上ASKTOM的網站的時候,看了一些關于權限設置方面的內容,覺得還是挺有啟發的,所以摘錄了一些個人覺得有用的信息來。對于權限的深入理解有了一定的提高。好,下面開始:
閱讀全文
閱讀全文