Package org.olap4j
Interface OlapStatement
- All Superinterfaces:
AutoCloseable,OlapWrapper,Statement,Wrapper
- All Known Subinterfaces:
PreparedOlapStatement
Object used for statically executing an MDX statement and returning a
CellSet.
An OlapStatement is generally created using
OlapConnection.createStatement().
- Since:
- Aug 22, 2006
- Author:
- jhyde
- See Also:
-
Field Summary
Fields inherited from interface java.sql.Statement
CLOSE_ALL_RESULTS, CLOSE_CURRENT_RESULT, EXECUTE_FAILED, KEEP_CURRENT_RESULT, NO_GENERATED_KEYS, RETURN_GENERATED_KEYS, SUCCESS_NO_INFO -
Method Summary
Modifier and TypeMethodDescriptionvoidaddListener(CellSetListener.Granularity granularity, CellSetListener listener) Adds a listener to be notified of events toCellSets created by this statement.executeOlapQuery(String mdx) Executes an OLAP statement.executeOlapQuery(SelectNode selectNode) Executes an OLAP statement expressed as a parse tree.Retrieves theOlapConnectionobject that produced thisOlapStatementobject.Methods inherited from interface org.olap4j.OlapWrapper
isWrapperFor, unwrapMethods inherited from interface java.sql.Statement
addBatch, cancel, clearBatch, clearWarnings, close, closeOnCompletion, enquoteIdentifier, enquoteLiteral, enquoteNCharLiteral, execute, execute, execute, execute, executeBatch, executeLargeBatch, executeLargeUpdate, executeLargeUpdate, executeLargeUpdate, executeLargeUpdate, executeQuery, executeUpdate, executeUpdate, executeUpdate, executeUpdate, getFetchDirection, getFetchSize, getGeneratedKeys, getLargeMaxRows, getLargeUpdateCount, getMaxFieldSize, getMaxRows, getMoreResults, getMoreResults, getQueryTimeout, getResultSet, getResultSetConcurrency, getResultSetHoldability, getResultSetType, getUpdateCount, getWarnings, isClosed, isCloseOnCompletion, isPoolable, isSimpleIdentifier, setCursorName, setEscapeProcessing, setFetchDirection, setFetchSize, setLargeMaxRows, setMaxFieldSize, setMaxRows, setPoolable, setQueryTimeoutMethods inherited from interface java.sql.Wrapper
isWrapperFor, unwrap
-
Method Details
-
getConnection
Retrieves theOlapConnectionobject that produced thisOlapStatementobject.- Specified by:
getConnectionin interfaceStatement- Throws:
SQLException
-
executeOlapQuery
Executes an OLAP statement.- Parameters:
mdx- MDXSELECTstatement- Returns:
- Cell set
- Throws:
OlapException- if a database access error occurs, this method is called on a closedOlapStatement, the query times out (seeStatement.setQueryTimeout(int)) or another thread cancels the statement (seeStatement.cancel())
-
executeOlapQuery
Executes an OLAP statement expressed as a parse tree.Validates the parse tree before executing it.
- Parameters:
selectNode- Parse tree of MDXSELECTstatement- Returns:
- Cell set
- Throws:
OlapException- if a database access error occurs, this method is called on a closedOlapStatement, the query times out (seeStatement.setQueryTimeout(int)) or another thread cancels the statement (seeStatement.cancel())
-
addListener
void addListener(CellSetListener.Granularity granularity, CellSetListener listener) throws OlapException Adds a listener to be notified of events toCellSets created by this statement.NOTE: You may wonder why this method belongs to the
OlapStatementclass and notCellSet. If the method belonged toCellSetthere would be a window between creation and registering a listener during which events might be lost, whereas registering the listener with the statement ensures that the listener is attached immediately that the cell set is opened. It follows that registering a listener does not affect the cell set currently open (if any), and that no events will be received if the statement has no open cell sets.- Parameters:
granularity- Granularity of cell set events to listen forlistener- Listener to be notified of changes- Throws:
OlapException- if granularity is not one supported by this server, per theOlapDatabaseMetaData.getSupportedCellSetListenerGranularities()method
-