原创 聚簇表
索引聚簇:將一組表中相同列存放在相同數據塊上,就是把相關數據存放在一起。 create cluster cluster_emp_dept(no number ) size 1024;---創建簇 size就是確定一個cluster鍵
原创 嵌套表和對象表
創建對象類型 create or replace type emp_type as object( name varchar2(200)); 創建對象類型的表類型 create or replace type emp_tab_type
原创 oracle merge使用
merge語句能夠替換oracle匿名模塊,根據源數據與目標數據進行比較,源數據可以是一個sql語句、一個表、視圖、物化視圖 可以對目的表添加、修改、刪除 必配matched就執行 不必配就執行 有點像decode/case when t
原创 降低高水位方法
第一種方法:alter table table_name shrink space 弊端:會導致行rowid改變 優點:能夠釋放delete刪除的空間 select * from user_segments t where t.segme
原创 接口與抽象類
相同點和不同點 相同點 都不能被直接實例化,都可以通過繼承實現其抽象方法。 都是面向抽象編程的技術基礎,實現了諸多的設計模式。 不同點 接口支持多繼承;抽象類不能實現多繼承。
原创 oracle的約束條件異常處理
不論是修改還是添加約束添加 exceptions這個對象對應的字段有 如果給一個表添加約束條件 create table constTable_1 as select t.id,t.code from thd_stkstockin t;
原创 分區數據交換
數據交換表面看上去是兩個段裏面的數據進行交換,其實就是數據字典的交換,但是表結構必須一樣 下面一個例子交換分區和索引 創建分區 create table Part_index_example ( x number , y number,
原创 索引分區
有兩種: 1、局部索引(Local index),每一個分區都有一個分區索引,而且只索引該分區的數據。該分區的所有數據都索引條目都存放在該分區索引中,該索引分區條目都存放在該該分區數據。 2、按照區間或者散列對索引進行分區:成爲全局分區索
原创 索引分類
索引分類: 大量索引:可能提高獲取數據的速度,增加了DML維護工作量 少量索引:可能降低獲取數據的速度,減少了DML維護工作量 1、B樹索引:一個平衡樹 索引組織表 B樹聚簇索引 降序索引
原创 關於分區表修改問題
修改分區數據問題: 1、如果修改分區列時: 修改後導致修改的行所在分區發生改變 修改後分區沒有發生改變 2、修改非分區列 修改後不會導致修改行所在分區改變 第一種:導致修改後行所在分區發生變化,需要將所在表設置爲 行可以移動 alter
原创 聚簇因子
聚簇因子:表明表中數據按照索引的順序的有序程度。 create table organized ( x int,y varchar2(80)); alter table organized add constraint organize
原创 組合分區
組合分區是以區間分區、列表分區、散列分區組合而成。 縱向表頭是:頂層分區機制 橫向表頭是:子分區機制,內容是支持版本 區間分區 列表分區 散列分區 區間分區 11g 1版本支持 9i 2版本支持 9i 1版本支持 列表分區 11g
原创 間隔分區
間隔分區是Oracle 11g第一版本添加功能。間隔分區以一個分區爲起點,根據定義的間隔,讓數據自動增加分區。 這樣varchar類型的無法作爲分區鍵值 create table interval_example ( starttime
原创 散列分區
散列分區就是使用哈希函數,對鍵值進行hash,來確定將記錄放在那個分區。oracle建議分區數爲2的n次方個,從而得到分區最佳。 散列分區能將數據均勻分佈在各個區間中 create table hash_example ( hash_ke
原创 引用分區
引用分區:處理父子表對等分區的問題,以這種方式處理分區,父表與子表的分區是一對一關係。在維護主子表。如果不是按照引用分區,即使父子表分區一致,也會因爲引用的約束,導致主表數據無法維護:例如下面的表,如果子表中將父表的startDate時間