2014年2月26日 星期三

主鍵改為複合

create table後不能將主鍵改為複合key

主鍵要在一開始設好並以加constraints的方式

不然後來再改會不能改成複合主鍵

跨schema select

想要跨schema 做select

可以在要被select 的table加入

grant select on TABLENAME to S1;

S1就是要做select的schema

同組欄位的index

在oracle sql上,pk index 與 一般 index取的欄位不能為同組欄位

但如果想讓它用同組欄位

那就先先建一般index,再建pk index

似乎就不會出現錯誤訊息了

更動partition後ENABLE INDEX

更動了partition,例如table要刪除幾個partition

之後要重新enable index的語法如下

ALTER INDEX "SCHEMA"."PK_TABLENAME" ENABLE;

ETL

ETL就是Extract、Transform、Load的簡稱
Extract就是從資料倉儲萃取出資料
Transform是將萃取出的原始資料轉換成一般化可用性資料
Load就是將最後轉換出來的資料載入資料庫
這三個過程就稱為ETL工程,我們通常把最後載入到資料庫中的這些有用的資料拿來做分析,
也就是用各種資料挖掘技術或是報表化來呈現出顯著資訊,
透過這些有價值的資訊進而做出商業決策。

SQL日期與字串轉換

dateformat = to_date('20140226','yyyymmdd')

to_char(dateformat,'yyyymmdd') = '20140226'

oracle DBA

在oracle若要以DBA身份登入資料庫時

一個好的做法是儘量不要使用sys或system等原始系統帳號

而是再創建一個user並 grant DBA 權限給它

這樣以後就都使用該user來當DBA來登入資料庫。