※ 引述《sohumi (皮老闆)》之銘言:
: 目前是使用Toad來管理,
: 很多時候需求是部分被提出的,
: 所經常會需要增加欄位,也可能動到PK,
: 但Toad並沒有針對現有table改變PK的功能(莫非是因為freeware版= =),
: 是因為Oracle本身的限制,或是可以用PL/SQL改變key?
關連性資料庫都有pk & fk的設定,
但是在Oracle中,連它本身開發的Oracle ERP並未使用,
因為這種設下去限制太死,無法很靈活的來使用開發,
而是使用在Index的部份來控管
1.unique index 同等於pk or fk
2.normal index
index的部份就是只能drop掉,再重建
我再舉個例子,在M$ SQL server裡,若要使用自動滾號的sequence,
就必須設在該table的data type,也就是只能單一table使用,
不然就是必須額外寫stored procedure & table去做滾號檔的動作
(也許目前最新版本不是這樣)
在oracle中,有提供建立sequence object的功能,
簡單的就可以讓多table共用一個sequence,
而且不會有lock & 重覆取號的問題
ps:oracle 雖然很貴,但是確實有它方便與彈性的地方,
所以也愈來愈多上市上櫃的公司在使用它的產品了
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 59.117.180.213
※ 編輯: fantasyj 來自: 59.117.180.213 (04/16 14:34)