明确提及索引 table space 用于通过唯一约束在幕后创建的索引

Explicitly Mentioning a index table space for index created behind the scene by a unique constraint

我对 Oracle 数据库世界还很陌生,所以我对这里的要求有点困惑,因为我对我应该在新工作地点完成的训练营之一有这样的要求。

第一个要求是我需要在 client_id 和 client_nbr 上创建一个唯一约束 UNIQ_BEL_CLIENT_EMP。

我做了

CONSTRAINT UNIQ_BEL_CLIENT_EMP UNIQUE(client_id,client_nbr)

然后它还说唯一约束会在幕后自动创建一个唯一索引所以为索引tablespace.

指定PDC_IX

我知道我们可以为我们显式创建的给定列指定索引 table space,但是我们如何为指定索引 table space幕后创造的东西?如果有人能帮我回答这个问题,我将不胜感激。

或者如果唯一索引是在幕后为唯一约束创建的,那么这样做是否有效????

CONSTRAINT UNIQ_BEL_CLIENT_EMP UNIQUE(client_id, client_nbr) USING INDEX TABLESPACE PDC_IX

您可以创建与约束内联的索引并在那里指定表空间。例如,

CREATE TABLE matt1 ( a number, 
                     CONSTRAINT matt1_u1 UNIQUE (a) 
                        USING INDEX ( CREATE INDEX matt1_u1_idx ON matt1 (a) TABLESPACE USERS ) );