站長資訊網
        最全最豐富的資訊網站

        oracle中rowid怎么用

        在oracle中,rowid是用于訪問數據,是唯一標記表中行的偽列,是表中的每一行數據都有一個唯一的標識符,語法為“select rowid…”;rowid是物理表中行數據的內部地址,其中一個是指向數據表中包含該行的塊所存放數據文件的地址,另一個是可以直接定位到數據行自身的這一行在數據塊中的地址。

        oracle中rowid怎么用

        本教程操作環境:windows10系統、Oracle 12c版、Dell G3電腦。

        oracle中rowid

        rowid是一個用來唯一標記表中行的偽列。它是物理表中行數據的內部地址,包含兩個地址,其一為指向數據表中包含該行的塊所存放數據文件的地址,另一個是可以直接定位到數據行自身的這一行在數據塊中的地址。

        oracle數據庫的表中的每一行數據都有一個唯一的標識符,或者稱為rowid,在oracle內部通常就是使用它來訪問數據的。rowid需要 10個字節的存儲空間,并用18個字符來顯示。該值表明了該行在oracle數據庫中的物理具體位置。可以在一個查詢中使用rowid來表明查詢結果中包含該值。

        oracle中rowid怎么用

        AAAR1yAAHAAAAFkAAA為例

        這里的AAAR1y是數據庫對象編號,AAH是文件標號,AAAAFk是塊編號,最后三位AAA是行編號。

        使用select * from DEPT; 輸出結果中是不能看到rowid這里一列的,這是因為這一列只在數據庫內部使用,rowid通常被稱為一個偽列。

        oracle中rowid怎么用

        如果想選擇

        scott.emp的數據后進行手工修改,則必須使

        select rowid,t.* from scott.emp t;

        而不能直接寫成

        select * from emp;
        select rowid,t.* from scott.emp t; select * from scott.emp for update;

        在ORACLE中用ROWID來定位記錄是最快的,比索引還快,所以如果先用SELECT ROWID選出要更新的行,放入COLLECTION中,再用 FORALL UPDATE 來批量更新可以提高速度。從這點來講是比其他方法好一點

        SELECT FOR UPDATE在更新前會鎖定記錄,這在復雜的并行查詢更新程序中是必要的,比如要求數據一致性,在過濾數據時不允許他人改動數據,會用FOR UPDATE或SET TRANSACTION READ ONLY來加鎖。另外像 CURSOR里的WHERE CURRENT OF CURSOR語句要求SELECT中必須加FOR UPDATE.

        推薦教程:《Oracle視頻教程》

        贊(0)
        分享到: 更多 (0)
        網站地圖   滬ICP備18035694號-2    滬公網安備31011702889846號
        主站蜘蛛池模板: 国产在线观看高清精品| 香蕉依依精品视频在线播放 | 99久久成人国产精品免费 | 国产精品伊人久久伊人电影| 国产精品无码一区二区三区电影| 久久国产精品无码网站| 99热这里只有精品国产66| 69SEX久久精品国产麻豆| 亚洲国产精品乱码一区二区 | 91精品视频网站| 久久99精品久久久久久久不卡 | 在线人成精品免费视频| 精品人伦一区二区三区潘金莲| 亚洲av无码成人精品区在线播放 | 国产亚洲精品无码成人| 在线涩涩免费观看国产精品| 久久精品国产一区二区电影| 国产精品免费久久久久影院| 久久久国产精品网站| 国产精品www| 国产精品分类视频分类一区| 国产精品高清一区二区人妖| 97精品国产手机| 国产成人精品无码免费看| 日韩国产精品无码一区二区三区| 中文精品久久久久人妻| 亚洲人午夜射精精品日韩| 亚洲精品成人区在线观看| 天天视频国产精品| 亚洲精品久久久www| 在线亚洲精品福利网址导航| 欧美精品整片300页| 日韩欧美一区二区三区中文精品| 久久久久久无码国产精品中文字幕| 精品偷自拍另类在线观看丰满白嫩大屁股ass| 国产成人精品一区二三区在线观看 | 亚洲精品无码久久久久AV麻豆| 日韩人妻无码精品无码中文字幕| 人妻少妇精品久久| 伊在人亚洲香蕉精品区麻豆| 亚洲AV无码久久精品蜜桃|