Module java.sql
Package java.sql

Interface RowId


public interfaceRowId
The representation (mapping) in the Java programming language of an SQL ROWID value. An SQL ROWID is a built-in type, a value of which can be thought of as an address for its identified row in a database table. Whether that address is logical or, in any respects, physical is determined by its originating data source.

Methods in the interfacesResultSet,CallableStatement, andPreparedStatement, such asgetRowId andsetRowId allow a programmer to access a SQLROWID value. TheRowId interface provides a method for representing the value of theROWID as a byte array or as aString.

The methodgetRowIdLifetime in the interfaceDatabaseMetaData, can be used to determine if aRowId object remains valid for the duration of the transaction in which theRowId was created, the duration of the session in which theRowId was created, or, effectively, for as long as its identified row is not deleted. In addition to specifying the duration of its valid lifetime outside its originating data source,getRowIdLifetime specifies the duration of aROWID value's valid lifetime within its originating data source. In this, it differs from a large object, because there is no limit on the valid lifetime of a large object within its originating data source.

All methods on theRowId interface must be fully implemented if the JDBC driver supports the data type.

Since:
1.6
See Also:
  • Method Summary

    Modifier and Type
    Method
    Description
    boolean
    Compares thisRowId to the specified object.
    byte[]
    Returns an array of bytes representing the value of the SQLROWID designated by thisjava.sql.RowId object.
    int
    Returns a hash code value of thisRowId object.
    Returns a String representing the value of the SQL ROWID designated by thisjava.sql.RowId object.
  • Method Details

    • equals

      boolean equals(Object obj)
      Compares thisRowId to the specified object. The result istrue if and only if the argument is not null and is a RowId object that represents the same ROWID as this object.

      It is important to consider both the origin and the valid lifetime of aRowId when comparing it to anotherRowId. If both are valid, and both are from the same table on the same data source, then if they are equal they identify the same row; if one or more is no longer guaranteed to be valid, or if they originate from different data sources, or different tables on the same data source, they may be equal but still not identify the same row.

      Overrides:
      equals in class Object
      Parameters:
      obj - theObject to compare thisRowId object against.
      Returns:
      true if theRowIds are equal; false otherwise
      Since:
      1.6
      See Also:
    • getBytes

      byte[] getBytes()
      Returns an array of bytes representing the value of the SQLROWID designated by thisjava.sql.RowId object.
      Returns:
      an array of bytes, whose length is determined by the driver supplying the connection, representing the value of the ROWID designated by this java.sql.RowId object.
    • toString

      String toString()
      Returns a String representing the value of the SQL ROWID designated by thisjava.sql.RowId object.

      Likejava.sql.Date.toString() returns the contents of its DATE as theString "2004-03-17" rather than as DATE literal in SQL (which would have been theString DATE "2004-03-17"), toString() returns the contents of its ROWID in a form specific to the driver supplying the connection, and possibly not as aROWID literal.

      Overrides:
      toString in class Object
      Returns:
      a String whose format is determined by the driver supplying the connection, representing the value of theROWID designated by thisjava.sql.RowId object.
    • hashCode

      int hashCode()
      Returns a hash code value of thisRowId object.
      Overrides:
      hashCode in class Object
      Returns:
      a hash code for theRowId
      See Also: