📄 temporaryrowholderresultset.java
字号:
"getPreviousRow() not expected to be called yet."); } return null; } /** * Returns the last row from the query, and returns NULL when there * are no rows. * * @return The last row, or NULL if no rows. * * @exception StandardException Thrown on failure * @see Row */ public ExecRow getLastRow() throws StandardException { if (SanityManager.DEBUG) { SanityManager.THROWASSERT( "getLastRow() not expected to be called yet."); } return null; } /** * Sets the current position to after the last row and returns NULL * because there is no current row. * * @return NULL. * * @exception StandardException Thrown on failure * @see Row */ public ExecRow setAfterLastRow() throws StandardException { if (SanityManager.DEBUG) { SanityManager.THROWASSERT( "getLastRow() not expected to be called yet."); } return null; } /** * Determine if the cursor is before the first row in the result * set. * * @return true if before the first row, false otherwise. Returns * false when the result set contains no rows. */ public boolean checkRowPosition(int isType) { return false; } /** * Returns the row number of the current row. Row * numbers start from 1 and go to 'n'. Corresponds * to row numbering used to position current row * in the result set (as per JDBC). * * @return the row number, or 0 if not on a row * */ public int getRowNumber() { return 0; } /** * Tells the system to clean up on an error. * * @return Nothing * * @exception StandardException Thrown on error. */ public void cleanUp() throws StandardException { close(); } /** Find out if the ResultSet is closed or not. Will report true for result sets that do not return rows. @return true if the ResultSet has been closed. */ public boolean isClosed() { return !isOpen; } /** * Tells the system that there will be no more access * to any database information via this result set; * in particular, no more calls to open(). * Will close the result set if it is not already closed. * * @return Nothing * @exception StandardException on error */ public void finish() throws StandardException { finished = true; close(); } /** * Get the execution time in milliseconds. * * @return long The execution time in milliseconds. */ public long getExecuteTime() { return 0L; } /** * @see ResultSet#getAutoGeneratedKeysResultset */ public ResultSet getAutoGeneratedKeysResultset() { //A non-null resultset would be returned only for an insert statement return (ResultSet)null; } /** * Get the Timestamp for the beginning of execution. * * @return Timestamp The Timestamp for the beginning of execution. */ public Timestamp getBeginExecutionTimestamp() { return (Timestamp)null; } /** * Get the Timestamp for the end of execution. * * @return Timestamp The Timestamp for the end of execution. */ public Timestamp getEndExecutionTimestamp() { return (Timestamp)null; } /** * Return the total amount of time spent in this ResultSet * * @param type CURRENT_RESULTSET_ONLY - time spent only in this ResultSet * ENTIRE_RESULTSET_TREE - time spent in this ResultSet and below. * * @return long The total amount of time spent (in milliseconds). */ public long getTimeSpent(int type) { return 0L; } /** * Get the subquery ResultSet tracking array from the top ResultSet. * (Used for tracking open subqueries when closing down on an error.) * * @param numSubqueries The size of the array (For allocation on demand.) * * @return NoPutResultSet[] Array of NoPutResultSets for subqueries. */ public NoPutResultSet[] getSubqueryTrackingArray(int numSubqueries) { return (NoPutResultSet[])null; } /** * Returns the name of the cursor, if this is cursor statement of some * type (declare, open, fetch, positioned update, positioned delete, * close). * * @return A String with the name of the cursor, if any. Returns * NULL if this is not a cursor statement. */ public String getCursorName() { return (String) null; } /** * @see NoPutResultSet#requiresRelocking */ public boolean requiresRelocking() { if (SanityManager.DEBUG) { SanityManager.THROWASSERT( "requiresRelocking() not expected to be called for " + getClass().getName()); } return false; } ///////////////////////////////////////////////////////// // // Access/RowSource -- not implemented // ///////////////////////////////////////////////////////// /** Get the next row as an array of column objects. The column objects can be a JBMS Storable or any Serializable/Externalizable/Formattable/Streaming type. <BR> A return of null indicates that the complete set of rows has been read. <p> A null column can be specified by leaving the object null, or indicated by returning a non-null getValidColumns. On streaming columns, it can be indicated by returning a non-null get FieldStates. <p> If RowSource.needToClone() is true then the returned row (the DataValueDescriptor[]) is guaranteed not to be modified by drainer of the RowSource (except that the input stream will be read, of course) and drainer will keep no reference to it before making the subsequent nextRow call. So it is safe to return the same DataValueDescriptor[] in subsequent nextRow calls if that is desirable for performance reasons. <p> If RowSource.needToClone() is false then the returned row (the DataValueDescriptor[]) may be be modified by drainer of the RowSource, and the drainer may keep a reference to it after making the subsequent nextRow call. In this case the client should severe all references to the row after returning it from getNextRowFromRowSource(). @exception StandardException Cloudscape Standard Error Policy */ public DataValueDescriptor[] getNextRowFromRowSource() throws StandardException { return null; } /** Does the caller of getNextRowFromRowSource() need to clone the row in order to keep a reference to the row past the getNextRowFromRowSource() call which returned the row. This call must always return the same for all rows in a RowSource (ie. the caller will call this once per scan from a RowSource and assume the behavior is true for all rows in the RowSource). */ public boolean needsToClone() { return false; } /** getValidColumns describes the DataValueDescriptor[] returned by all calls to the getNextRowFromRowSource() call. If getValidColumns returns null, the number of columns is given by the DataValueDescriptor.length where DataValueDescriptor[] is returned by the preceeding getNextRowFromRowSource() call. Column N maps to DataValueDescriptor[N], where column numbers start at zero. If getValidColumns return a non null validColumns FormatableBitSet the number of columns is given by the number of bits set in validColumns. Column N is not in the partial row if validColumns.get(N) returns false. Column N is in the partial row if validColumns.get(N) returns true. If column N is in the partial row then it maps to DataValueDescriptor[M] where M is the count of calls to validColumns.get(i) that return true where i < N. If DataValueDescriptor.length is greater than the number of columns indicated by validColumns the extra entries are ignored. */ public FormatableBitSet getValidColumns() { return null; } /** closeRowSource tells the RowSource that it will no longer need to return any rows and it can release any resource it may have. Subsequent call to any method on the RowSource will result in undefined behavior. A closed rowSource can be closed again. */ public void closeRowSource() { } ///////////////////////////////////////////////////////// // // Access/RowLocationRetRowSource -- not implemented // ///////////////////////////////////////////////////////// /** needsRowLocation returns true iff this the row source expects the drainer of the row source to call rowLocation after getting a row from getNextRowFromRowSource. @return true iff this row source expects some row location to be returned @see #rowLocation */ public boolean needsRowLocation() { return false; } /** rowLocation is a callback for the drainer of the row source to return the rowLocation of the current row, i.e, the row that is being returned by getNextRowFromRowSource. This interface is for the purpose of loading a base table with index. In that case, the indices can be built at the same time the base table is laid down once the row location of the base row is known. This is an example pseudo code on how this call is expected to be used: <BR><pre> boolean needsRL = rowSource.needsRowLocation(); DataValueDescriptor[] row; while((row = rowSource.getNextRowFromRowSource()) != null) { RowLocation rl = heapConglomerate.insertRow(row); if (needsRL) rowSource.rowLocation(rl); } </pre><BR> NeedsRowLocation and rowLocation will ONLY be called by a drainer of the row source which CAN return a row location. Drainer of row source which cannot return rowLocation will guarentee to not call either callbacks. Conversely, if NeedsRowLocation is called and it returns true, then for every row return by getNextRowFromRowSource, a rowLocation callback must also be issued with the row location of the row. Implementor of both the source and the drain of the row source must be aware of this protocol. <BR> The RowLocation object is own by the caller of rowLocation, in other words, the drainer of the RowSource. This is so that we don't need to new a row location for every row. If the Row Source wants to keep the row location, it needs to clone it (RowLocation is a ClonableObject). @exception StandardException on error */ public void rowLocation(RowLocation rl) throws StandardException { } // Class implementation /** * Is this ResultSet or it's source result set for update * This method will be overriden in the inherited Classes * if it is true * @return Whether or not the result set is for update. */ public boolean isForUpdate() { return false; } /** * Shallow clone this result set. Used in trigger reference. * beetle 4373. */ public Object clone() { Object clo = null; try { clo = super.clone(); } catch (CloneNotSupportedException e) {} return clo; } public java.sql.SQLWarning getWarnings() { return null; }}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -