注册 登录  
 加关注
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

Oracle、MySQL资料及经验

.

 
 
 

日志

 
 

普通索引改为主键的高效方式  

2013-12-08 20:34:27|  分类: sql与pl/sql |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |

--摘自梁敬彬的基于案例进行sql优化

drop table t_p cascade constraints purge;
create table t_p
(order_id number(3),
 item_id number(2),
 comments varchar2(400));

已知有如下索引:
create index ord_itm_idx on t_p(order_id,item_id);


现在需要建主键,低效方式:
drop index ord_itm_idx;
alter table t_p add constraint ord_itm_id_pk primary key (order_id,item_id);


SCOTT@orcl> select index_name from user_indexes where table_name='T_P';
INDEX_NAME
----------------------------
ORD_ITM_ID_PK


删除主键:
alter table T_P drop constraint ORD_ITM_ID_PK cascade;
create index ord_itm_idx on t_p(order_id,item_id);

在普通索引上建主键的高效方式:
alter table t_p add constraint ord_itm_id_pk primary key (order_id,item_id) using index ord_itm_idx ;

差别只是索引名不一样而已
SCOTT@orcl> select index_name from user_indexes where table_name='T_P';
INDEX_NAME
----------------------------
ORD_ITM_IDX

  评论这张
 
阅读(164)| 评论(0)
推荐 转载

历史上的今天

在LOFTER的更多文章

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2018