Home Database Mysql Tutorial Oracle 10g 中的ROWID详解

Oracle 10g 中的ROWID详解

Jun 07, 2016 pm 04:48 PM

Oracle 10g 中的ROWID详解,Oracle的ROWID用来唯一标识表中的一条记录,是这条数据在数据库中存放的物理地址。

首先使用select * from v$version; 查询Oracle数据库当前的版本
 
SQL> select * from v$version;
 
BANNER
 ----------------------------------------------------------------
 Oracle Database 10g Enterprise Edition Release 10.2.0.3.0 - Prod
 PL/SQL Release 10.2.0.3.0 - Production
 CORE    10.2.0.3.0      Production
 TNS for 32-bit Windows: Version 10.2.0.3.0 - Production
 NLSRTL Version 10.2.0.3.0 - Production
 
我们首先执行一条查询:
 
SQL> select rowid,employee_id,first_name,last_name,job_id
  2  from employees
  3  where rownum 
ROWID              EMPLOYEE_ID FIRST_NAME          LAST_NAME                JOB_ID
 ------------------ ----------- -------------------- ------------------------- ----------
 AAAMieAAFAAAABUAAA        198 Donald                OConnell                  SH_CLERK
 AAAMieAAFAAAABUAAB        199 Douglas              Grant                    SH_CLERK
 AAAMieAAFAAAABUAAC        200 Jennifer              Whalen                    AD_ASST
 AAAMieAAFAAAABUAAD        201 Michael              Hartstein                MK_MAN
 AAAMieAAFAAAABUAAE        202 Pat                    Fay                      MK_REP
 AAAMieAAFAAAABUAAF        203 Susan                Mavris                    HR_REP
 AAAMieAAFAAAABUAAG        204 Hermann          Baer                      PR_REP
 AAAMieAAFAAAABUAAH        205 Shelley              Higgins                  AC_MGR
 AAAMieAAFAAAABUAAI        206 William              Gietz                    AC_ACCOUNT
 AAAMieAAFAAAABYAAA        100 Steven              King                      AD_PRES
 
已选择10行。
 
可以看到查询结果中所显示的ROWID的值。

Oracle rowid

Oracle入门基础教程:rowid详解

Oracle 中ROWNUM用法总结,ROWNUM 与 rowid 区别

rowid走索引之嫌疑犯抓获

Oracle利用rownum和rowid分页
 

Oracle的ROWID用来唯一标识表中的一条记录,是这条数据在数据库中存放的物理地址。
 Oracle的ROWID伪列的值并不存储在数据库中。Oracle在执行查询时计算其值。Oracle的物理扩展ROWID有18位,每位采用64位编码,分别用A~Z、a~z、0~9、+、/共64个字符表示。A表示0,B表示1,……Z表示25,a表示26,……z表示51,0表示52,……,9表示61,+表示62,/表示63。
 通过DBMS_ROWID包可以把ROWID值转换成有意义的信息。
 
SQL> select dbms_rowid.rowid_relative_fno(rowid),employee_id
  2  from employees
  3  where employee_id=200;
 
DBMS_ROWID.ROWID_RELATIVE_FNO(ROWID) EMPLOYEE_ID
 ------------------------------------ -----------
                                    5        200
 
执行下面的查询,可以获得该数据存储的物理数据文件的信息:
 
SQL> col tablespace_name format a20;
 SQL> col file_name format a80;
 SQL> select file_name, tablespace_name from dba_data_files where relative_fno = 5;
 
FILE_NAME                                                                        TABLESPACE_NAME
 -------------------------------------------------------------------------------- --------------------
 E:\ORACLE\PRODUCT\10.2.0\ORADATA\KEYMENDB\EXAMPLE01.DBF                          EXAMPLE
 

在SQL语句的SELECT和WHERE子句中都可以使用ROWID的值。大多数情况下,,ROWID唯一标识一行。然而,行有可能存储在同一个聚簇中的不同表中,因此包含具有相同ROWID的行。
 
理解ROWID首先需要理解它的两个方面:ROWID的特性和ROWID的结构。
 

Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn

Hot AI Tools

Undresser.AI Undress

Undresser.AI Undress

AI-powered app for creating realistic nude photos

AI Clothes Remover

AI Clothes Remover

Online AI tool for removing clothes from photos.

Undress AI Tool

Undress AI Tool

Undress images for free

Clothoff.io

Clothoff.io

AI clothes remover

AI Hentai Generator

AI Hentai Generator

Generate AI Hentai for free.

Hot Article

R.E.P.O. Energy Crystals Explained and What They Do (Yellow Crystal)
4 weeks ago By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Best Graphic Settings
4 weeks ago By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. How to Fix Audio if You Can't Hear Anyone
4 weeks ago By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Chat Commands and How to Use Them
4 weeks ago By 尊渡假赌尊渡假赌尊渡假赌

Hot Tools

Notepad++7.3.1

Notepad++7.3.1

Easy-to-use and free code editor

SublimeText3 Chinese version

SublimeText3 Chinese version

Chinese version, very easy to use

Zend Studio 13.0.1

Zend Studio 13.0.1

Powerful PHP integrated development environment

Dreamweaver CS6

Dreamweaver CS6

Visual web development tools

SublimeText3 Mac version

SublimeText3 Mac version

God-level code editing software (SublimeText3)

Explain InnoDB Full-Text Search capabilities. Explain InnoDB Full-Text Search capabilities. Apr 02, 2025 pm 06:09 PM

InnoDB's full-text search capabilities are very powerful, which can significantly improve database query efficiency and ability to process large amounts of text data. 1) InnoDB implements full-text search through inverted indexing, supporting basic and advanced search queries. 2) Use MATCH and AGAINST keywords to search, support Boolean mode and phrase search. 3) Optimization methods include using word segmentation technology, periodic rebuilding of indexes and adjusting cache size to improve performance and accuracy.

How do you alter a table in MySQL using the ALTER TABLE statement? How do you alter a table in MySQL using the ALTER TABLE statement? Mar 19, 2025 pm 03:51 PM

The article discusses using MySQL's ALTER TABLE statement to modify tables, including adding/dropping columns, renaming tables/columns, and changing column data types.

How do I configure SSL/TLS encryption for MySQL connections? How do I configure SSL/TLS encryption for MySQL connections? Mar 18, 2025 pm 12:01 PM

Article discusses configuring SSL/TLS encryption for MySQL, including certificate generation and verification. Main issue is using self-signed certificates' security implications.[Character count: 159]

When might a full table scan be faster than using an index in MySQL? When might a full table scan be faster than using an index in MySQL? Apr 09, 2025 am 12:05 AM

Full table scanning may be faster in MySQL than using indexes. Specific cases include: 1) the data volume is small; 2) when the query returns a large amount of data; 3) when the index column is not highly selective; 4) when the complex query. By analyzing query plans, optimizing indexes, avoiding over-index and regularly maintaining tables, you can make the best choices in practical applications.

What are some popular MySQL GUI tools (e.g., MySQL Workbench, phpMyAdmin)? What are some popular MySQL GUI tools (e.g., MySQL Workbench, phpMyAdmin)? Mar 21, 2025 pm 06:28 PM

Article discusses popular MySQL GUI tools like MySQL Workbench and phpMyAdmin, comparing their features and suitability for beginners and advanced users.[159 characters]

How do you handle large datasets in MySQL? How do you handle large datasets in MySQL? Mar 21, 2025 pm 12:15 PM

Article discusses strategies for handling large datasets in MySQL, including partitioning, sharding, indexing, and query optimization.

Can I install mysql on Windows 7 Can I install mysql on Windows 7 Apr 08, 2025 pm 03:21 PM

Yes, MySQL can be installed on Windows 7, and although Microsoft has stopped supporting Windows 7, MySQL is still compatible with it. However, the following points should be noted during the installation process: Download the MySQL installer for Windows. Select the appropriate version of MySQL (community or enterprise). Select the appropriate installation directory and character set during the installation process. Set the root user password and keep it properly. Connect to the database for testing. Note the compatibility and security issues on Windows 7, and it is recommended to upgrade to a supported operating system.

Difference between clustered index and non-clustered index (secondary index) in InnoDB. Difference between clustered index and non-clustered index (secondary index) in InnoDB. Apr 02, 2025 pm 06:25 PM

The difference between clustered index and non-clustered index is: 1. Clustered index stores data rows in the index structure, which is suitable for querying by primary key and range. 2. The non-clustered index stores index key values ​​and pointers to data rows, and is suitable for non-primary key column queries.

See all articles