首页  电脑故障排除  病毒安全 电脑基础知识  硬件知识  软件应用知识  操作系统知识  编程程序

美国编程网址 日本编程网址 法国编程网址 德国编程网址 韩国编程网址 香港编程网址 台湾编程网址

您的位置:首页>>编程程序>>Oracle

请教关于rowid的几个问题

 
请教关于rowid的几个问题
  
  听说rowid反映的是数据的实际物理地址
现在我有一个大表需要操作,为提高效率我想用多进程处理,每个进程处理不同的数据,那么
1.rowid的编码规律或规则是什么,好像通常连续,但也有不连续的时候。18位编码中所有的可见字符都可能出现么。我问这个问题的目的是想通过rowid能将数据比较均匀的分布开,以便每个进程的负荷大致相当。另外rowid接近的数据是否通常存储在相同或相近的盘区中,以便我不同进程存取不同的物理IO,实现IO上的分布
2.通过rowid存取数据,比如whererowidbetween'AAAAAAAAAAAAAAAAAA'and'AAAAAAAAAACAAAAAAA'
数据库是否还会全表扫描
3.由于是并发操作,会有insert/update/delete操作,这些操作会影响rowid的值么(尤其是比如我A进程删除了1行,B进程又插入了1行,这两行的rowid有没有可能是同一个啊)
  
  
  
  sshd 回复于:2005-01-06 02:04:55
donotmanipulaterowidsdirectly.
forqueries,use"parallel"hinttoarchiveparallelism
forDMLs,parallelismcanbeachivedbypartitionthetables
luck28us 回复于:2005-01-06 21:41:19
ROWID是和物理位置有关。从studentguide中摘一段:
Theformat(ROWID)isOOOOOOFFFBBBBBBRRR:
.OOOOOOistheobjectnumber.
.FFFistherelativedatafilenumberwheretheblockislocated;the
filenumberisrelativetothetablespace.
.BBBBBBistheblockIDwheretherowislocated.
.RRRistherowintheblock.
不过如楼上sshd说的一样,不要直接操作ROWID!
  

查看上一页  返回分类首页 返回96PC首页  查看下一页

  版权所有:电脑知识大全 网站备案:粤ICP备07031496号  联系我们

友情链接:母婴知识  外贸商务网  娱乐频道  汽车维修知识  股票入门知识  游戏攻略秘籍  本站空间由安信网络提供