• Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 1104
  • Last Modified:

Rowid Format has a "/" (Forward Slash) - WHY?


Hi,

As per my knowledge ROWID is a HEX value and should not have a "/" (Forward Slash) in it. I have not found any documentation in Oracle on this.

1. This is a normal TABLE.
2. ROWID has ONE or TWO "/" Forward Slash characters.

Any one knows why?

Thanks,
Sudhakar Kotagiri
==================
0
skotagiri123
Asked:
skotagiri123
  • 3
  • 3
2 Solutions
 
Mark GeerlingsDatabase AdministratorCommented:
Which version of Oracle do you have? Oracle changed the format of rowid between Oracle8i and Oracle9.  In Oracle9i and 10g, the rowid is not expressed in HEX by default.
0
 
actonwangCommented:
ROWID is a datatype. What we normally see is a form which has been transformed by Oracle.

What we see here is an extended ROWID. internally it has 10 bytes.The extended ROWID pseudocolumn is returned to the client in the form of an 18-character string (for example, "AAAA8mAALAAAAQkAAA"), which represents a base 64 encoding of the components of the extended ROWID in a four-piece format, OOOOOOFFFBBBBBBRRR:

    * OOOOOO: The data object number identifies the database segment (AAAA8m in the example). Schema objects in the same segment, such as a cluster of tables, have the same data object number.
    * FFF: The datafile that contains the row (file AAL in the example). File numbers are unique within a database.
    * BBBBBB: The data block that contains the row (block AAAAQk in the example). Block numbers are relative to their datafile, not tablespace. Therefore, two rows with identical block numbers could reside in two different datafiles of the same tablespace.
    * RRR: The row in the block (row AAA in the example).
 
     So it is not HEX number and it could be any character in the returned format.

Acton
0
 
skotagiri123Author Commented:
Sorry for the delay. Moved to a new project. My question is :

What are "/" also part of the POWID returned? This is found in the return FORMAT.

Thanks,
0
What does it mean to be "Always On"?

Is your cloud always on? With an Always On cloud you won't have to worry about downtime for maintenance or software application code updates, ensuring that your bottom line isn't affected.

 
Mark GeerlingsDatabase AdministratorCommented:
Did you notice my earlier question: "Which version of Oracle do you have?"

That *DOES* make a difference, since Oracle changed the format for displaying the value of ROWID after Oracle8i.
0
 
Mark GeerlingsDatabase AdministratorCommented:
Just FYI, here is a partial result of:
select rowid from [one of our tables]
AAAqGfAALAAADWgAA7
AAAqGfAALAAADWgAA8
AAAqGfAALAAADWgAA9
AAAqGfAALAAADWgAA+
AAAqGfAALAAADWgAA/
AAAqGfAALAAADWgABA
AAAqGfAALAAADWgABB

So, in Oracle10.1 at least, it is not unusual to see non-numeric, and non-alphabetic characters displayed in the ROWID.
0
 
actonwangCommented:
As I said, no document claims that ROWID must be showed in hexadecimal form and therefore it is not strange to see "/" or "+" appearing along with "W" "g" which are also not hex.
0
 
actonwangCommented:
I hope that I can find the algorithm to transfer internal content but as Mark listed they certianly don't restrict them  to alphanumeric.
0

Featured Post

Restore individual SQL databases with ease

Veeam Explorer for Microsoft SQL Server delivers an easy-to-use, wizard-driven interface for restoring your databases from a backup. No expert SQL background required. Web interface provides a complete view of all available SQL databases to simplify the recovery of lost database

  • 3
  • 3
Tackle projects and never again get stuck behind a technical roadblock.
Join Now