Docjar: A Java Source and Docuemnt Enginecom.*    java.*    javax.*    org.*    all    new    plug-in

Quick Search    Search Deep

org.apache.derby.diag
Class SpaceTable  view SpaceTable download SpaceTable.java

java.lang.Object
  extended byorg.apache.derby.vti.VTITemplate
      extended byorg.apache.derby.diag.SpaceTable
All Implemented Interfaces:
java.sql.ResultSet, org.apache.derby.vti.VTICosting

public class SpaceTable
extends org.apache.derby.vti.VTITemplate
implements org.apache.derby.vti.VTICosting

SpaceTable is a virtual table that shows the space usage of a particular table and its indexes. This virtual table can be invoked by calling it directly, and supplying the schema name and table name as arguments.

 select * from new org.apache.derby.diag.SpaceTable('MYSCHEMA','MYTABLE') t; 
If the schema name is not supplied, the default schema is used.
 select * from new org.apache.derby.diag.SpaceTable('MYTABLE') t; 
Alternatively, the table can be invoked through the system alias SpaceTable
 select * from new SPACETABLE('MYTABLE') t; 

NOTE: Both the schema name and the table name must be any expression that evaluates to a string data type. If you created a schema or table name as a non-delimited identifier, you must present their names in all upper case.

The SpaceTable virtual table can be used to estimate whether space might be saved by compressing a table and its indexes.

The SpaceTable virtual table has the following columns:

To get space information on all schemas and tables, use a query such as

    select v.*
    from SYS.SYSSCHEMAS s,
         SYS.SYSTABLES t,
         new org.apache.derby.diag.SpaceTable(SCHEMANAME,TABLENAME) v
    where s.SCHEMAID = t.SCHEMAID;
    


Field Summary
private static org.apache.derby.iapi.sql.ResultColumnDescriptor[] columnInfo
           
private  ConglomInfo[] conglomTable
           
(package private)  int currentRow
           
(package private)  boolean initialized
           
private static java.sql.ResultSetMetaData metadata
           
private  java.lang.String schemaName
           
private  org.apache.derby.iapi.store.access.SpaceInfo spaceInfo
           
private  java.lang.String tableName
           
private  org.apache.derby.iapi.store.access.TransactionController tc
           
private  boolean wasNull
           
 
Fields inherited from interface org.apache.derby.vti.VTICosting
defaultEstimatedCost, defaultEstimatedRowCount
 
Fields inherited from interface java.sql.ResultSet
CLOSE_CURSORS_AT_COMMIT, CONCUR_READ_ONLY, CONCUR_UPDATABLE, FETCH_FORWARD, FETCH_REVERSE, FETCH_UNKNOWN, HOLD_CURSORS_OVER_COMMIT, TYPE_FORWARD_ONLY, TYPE_SCROLL_INSENSITIVE, TYPE_SCROLL_SENSITIVE
 
Constructor Summary
SpaceTable(java.lang.String tableName)
           
SpaceTable(java.lang.String schemaName, java.lang.String tableName)
           
 
Method Summary
 void close()
          This method closes the result set and frees any associated resources.
private  void getConglomInfo(org.apache.derby.iapi.sql.conn.LanguageConnectionContext lcc)
           
 double getEstimatedCostPerInstantiation(org.apache.derby.vti.VTIEnvironment vtiEnvironment)
          Get the estimated cost for a single instantiation of a VTI.
 double getEstimatedRowCount(org.apache.derby.vti.VTIEnvironment vtiEnvironment)
          Get the estimated row count for a single scan of a VTI.
 int getInt(int columnNumber)
          This method returns the value of the specified column as a Java int.
 long getLong(int columnNumber)
          This method returns the value of the specified column as a Java long.
 java.sql.ResultSetMetaData getMetaData()
          This method returns data about the columns returned as part of the result set as a ResultSetMetaData instance.
 short getShort(int columnNumber)
          This method returns the value of the specified column as a Java short.
private  void getSpaceInfo(int index)
           
 java.lang.String getString(int columnNumber)
          This method returns the value of the specified column as a Java String.
 boolean next()
          This method advances to the next row in the result set.
 boolean supportsMultipleInstantiations(org.apache.derby.vti.VTIEnvironment vtiEnvironment)
          Find out if the ResultSet of the VTI can be instantiated multiple times.
 boolean wasNull()
          This method tests whether the value of the last column that was fetched was actually a SQL NULL value.
 
Methods inherited from class org.apache.derby.vti.VTITemplate
absolute, afterLast, beforeFirst, cancelRowUpdates, clearWarnings, deleteRow, findColumn, first, getArray, getArray, getAsciiStream, getAsciiStream, getBigDecimal, getBigDecimal, getBigDecimal, getBigDecimal, getBinaryStream, getBinaryStream, getBlob, getBlob, getBoolean, getBoolean, getByte, getByte, getBytes, getBytes, getCharacterStream, getCharacterStream, getClob, getClob, getConcurrency, getCursorName, getDate, getDate, getDate, getDate, getDouble, getDouble, getFetchDirection, getFetchSize, getFloat, getFloat, getInt, getLong, getObject, getObject, getObject, getObject, getRef, getRef, getRow, getShort, getStatement, getString, getTime, getTime, getTime, getTime, getTimestamp, getTimestamp, getTimestamp, getTimestamp, getType, getUnicodeStream, getUnicodeStream, getURL, getURL, getWarnings, insertRow, isAfterLast, isBeforeFirst, isFirst, isLast, last, moveToCurrentRow, moveToInsertRow, previous, refreshRow, relative, rowDeleted, rowInserted, rowUpdated, setFetchDirection, setFetchSize, updateArray, updateArray, updateAsciiStream, updateAsciiStream, updateBigDecimal, updateBigDecimal, updateBinaryStream, updateBinaryStream, updateBlob, updateBlob, updateBoolean, updateBoolean, updateByte, updateByte, updateBytes, updateBytes, updateCharacterStream, updateCharacterStream, updateClob, updateClob, updateDate, updateDate, updateDouble, updateDouble, updateFloat, updateFloat, updateInt, updateInt, updateLong, updateLong, updateNull, updateNull, updateObject, updateObject, updateObject, updateObject, updateRef, updateRef, updateRow, updateShort, updateShort, updateString, updateString, updateTime, updateTime, updateTimestamp, updateTimestamp
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

conglomTable

private ConglomInfo[] conglomTable

initialized

boolean initialized

currentRow

int currentRow

wasNull

private boolean wasNull

schemaName

private java.lang.String schemaName

tableName

private java.lang.String tableName

spaceInfo

private org.apache.derby.iapi.store.access.SpaceInfo spaceInfo

tc

private org.apache.derby.iapi.store.access.TransactionController tc

columnInfo

private static final org.apache.derby.iapi.sql.ResultColumnDescriptor[] columnInfo

metadata

private static final java.sql.ResultSetMetaData metadata
Constructor Detail

SpaceTable

public SpaceTable(java.lang.String schemaName,
                  java.lang.String tableName)

SpaceTable

public SpaceTable(java.lang.String tableName)
Method Detail

getConglomInfo

private void getConglomInfo(org.apache.derby.iapi.sql.conn.LanguageConnectionContext lcc)
                     throws org.apache.derby.iapi.error.StandardException

getSpaceInfo

private void getSpaceInfo(int index)
                   throws org.apache.derby.iapi.error.StandardException

getMetaData

public java.sql.ResultSetMetaData getMetaData()
Description copied from interface: java.sql.ResultSet
This method returns data about the columns returned as part of the result set as a ResultSetMetaData instance.

Specified by:
getMetaData in interface java.sql.ResultSet

next

public boolean next()
             throws java.sql.SQLException
Description copied from interface: java.sql.ResultSet
This method advances to the next row in the result set. Any streams open on the current row are closed automatically.

Specified by:
next in interface java.sql.ResultSet

close

public void close()
Description copied from interface: java.sql.ResultSet
This method closes the result set and frees any associated resources.

Specified by:
close in interface java.sql.ResultSet

getString

public java.lang.String getString(int columnNumber)
Description copied from interface: java.sql.ResultSet
This method returns the value of the specified column as a Java String.

Specified by:
getString in interface java.sql.ResultSet

getLong

public long getLong(int columnNumber)
Description copied from interface: java.sql.ResultSet
This method returns the value of the specified column as a Java long.

Specified by:
getLong in interface java.sql.ResultSet

getShort

public short getShort(int columnNumber)
Description copied from interface: java.sql.ResultSet
This method returns the value of the specified column as a Java short.

Specified by:
getShort in interface java.sql.ResultSet

getInt

public int getInt(int columnNumber)
Description copied from interface: java.sql.ResultSet
This method returns the value of the specified column as a Java int.

Specified by:
getInt in interface java.sql.ResultSet

wasNull

public boolean wasNull()
Description copied from interface: java.sql.ResultSet
This method tests whether the value of the last column that was fetched was actually a SQL NULL value.

Specified by:
wasNull in interface java.sql.ResultSet

getEstimatedRowCount

public double getEstimatedRowCount(org.apache.derby.vti.VTIEnvironment vtiEnvironment)
Description copied from interface: org.apache.derby.vti.VTICosting
Get the estimated row count for a single scan of a VTI.

Specified by:
getEstimatedRowCount in interface org.apache.derby.vti.VTICosting

getEstimatedCostPerInstantiation

public double getEstimatedCostPerInstantiation(org.apache.derby.vti.VTIEnvironment vtiEnvironment)
Description copied from interface: org.apache.derby.vti.VTICosting
Get the estimated cost for a single instantiation of a VTI.

Specified by:
getEstimatedCostPerInstantiation in interface org.apache.derby.vti.VTICosting

supportsMultipleInstantiations

public boolean supportsMultipleInstantiations(org.apache.derby.vti.VTIEnvironment vtiEnvironment)
Description copied from interface: org.apache.derby.vti.VTICosting
Find out if the ResultSet of the VTI can be instantiated multiple times.

Specified by:
supportsMultipleInstantiations in interface org.apache.derby.vti.VTICosting