作者fooker ()
看板Database
標題Re: [SQL ] 請ORACLE高手解答,謝謝
時間Mon Aug 30 10:44:56 2010
感謝各位
小弟資料庫有兩個tablespace:
一個"PDM_TABLE"存放table
一個"PDM_INDEX"存放index
查詢 tablespace 所有table
select table_name from all_tables where tablespace_name='PDM_INDEX'; 結果:no
rows selected
select table_name from all_tables where tablespace_name='PDM_TABLE'; 結果:有一
大串table
查詢 tablespace 所有index
select index_name from all_indexes where tablespace_name='PDM_INDEX'; 結果:有
一大串INDEX
select index_name from all_indexes where tablespace_name='PDM_TABLE'; 結果:no
rows selected
tablespace PDM_INDEX裏有一大串INDEX,裡面明明有列出小弟欲重建的
"PDM_PIVSECTXN_FK2"
重建
alter index PDM_PIVSECTXN_FK2 rebuild;
卻顯示:
ERROR at line 1:
ORA-01418: specified index does not exist
而想新建立index
create index PDM_PIVSECTXN_FK2 on PDM_PIVSECTXN (pivid);
顯示
ERROR at line 1:
ORA-00942: table or view does not exist
但table "PDM_PIVSECTXN"明明存在tablespace "PDM_TABLE"
不曉得哪裏有問題,似乎是原本的table index都不讓人動?
可以新create 同名table PDM_PIVSECTXN 會存在在'PDM_INDEX'裏
然後也可以新create index PDM_PIVSECTXN_FK2在 新PDM_PIVSECTXN 裏
但解決不了軟體錯誤問題...orz
資料庫好像超難的....
※ 引述《fantasyj (如夢似幻)》之銘言:
: 語法:
: create unique index <index name> on <table name> (columns name)
: tablespace <tablespace name>;
: create index <index name> on <table name> (columns name)
: tablespace <tablespace name>;
: 例如:
: create unique index AOM.AOM_EO_DELAYS_U1 on AOM.AOM_EO_DELAYS (EO_DELAY_ID)
: tablespace AOMX
: pctfree 10
: initrans 2
: maxtrans 255
: storage
: (
: initial 40K
: next 40K
: minextents 1
: maxextents 505
: pctincrease 0
: );
: ps:上面舉例的額外的設定參數,沒加也沒關係,會自動依該db的預設值...
: 若是複合型index,只要在columns name內用一起輸入即可
: create index AOM.AOM_EO_DELAYS_U1 on AOM.AOM_EO_DELAYS (EO_DELAY_ID, MST_ID)
: tablespace AOMX;
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 221.120.70.136
推 fantasyj:你登入的username? 該table所屬的username? 08/30 10:50
→ fantasyj:db物件都有owner,像我之前附上AOM.AOM_EO_DELAYS,AOM就是 08/30 10:56
→ fooker:system/manager 有admin的權限? 08/30 11:17
→ fantasyj:從ALL_TABLES去找你那個table的owner,然後建立index時, 08/30 11:34
→ fantasyj:table name & index name前都要加上owner.. 08/30 11:38
→ fooker:感恩,我用rebuild online有反映了,好像要很久? 08/30 12:51
推 fantasyj:用rebuild其實很慢,直接drop index -->create index 快.. 08/30 15:32