作者fantasyj (如梦似幻)
看板Database
标题Re: [系统] Oracle 10g 已经建立的table 能够改变P …
时间Sat Apr 16 14:32:54 2011
※ 引述《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)