熱點推薦:
您现在的位置: 電腦知識網 >> 編程 >> Oracle >> 正文

oracle10g中unique與index的問題

2013-11-13 22:12:28  來源: Oracle 

  create table test

  (

  x integer

  y integer

  z integer

  );

  alter table test add constraint primary key (x); 產生一個約束並產生一個同名索引

  create unique index index on test(xy);

  create unique index index on test(xy); 不允許完全相同的索引即使索引名稱不同

  create unique index index on test(yz);

  create unique index index on test(zy); index 是與index互不相同的索引

  alter table test add constraint cons unique(xyz) ; 產生一個約束並自動產生一個名為cons 的UNIQUE索引

  alter table test add constraint cons unique(xy) ; 產生一個約束但因與index 重復(自動產生的索引不區分順序)因此不能自動產生索引

  alter table test add constraint cons unique(yx) ; 產生一個約束但因與index 重復因此不能自動產生索引

  create unique index cons on test(xy);  不能執行因為索引cons 已經被約束cons 自動創建的索引占用

  alter table test add constraint cons check (x>);

  alter table test add constraint cons check (x>);  check可以內容完全相同

  處理辦法:

  提取所有約束(UCPR)

  提取名稱不在約束表中的所有索引


From:http://tw.wingwit.com/Article/program/Oracle/201311/18470.html
    推薦文章
    Copyright © 2005-2013 電腦知識網 Computer Knowledge   All rights reserved.