Interface PreparedOlapStatement
- All Superinterfaces:
AutoCloseable,OlapStatement,OlapWrapper,PreparedStatement,Statement,Wrapper
An OLAP statement is precompiled and stored in a
PreparedOlapStatement object. This object can then be used to
efficiently execute this statement multiple times.
A PreparedOlapStatement is generally created using
OlapConnection.prepareOlapStatement(String).
Note: The setter methods (setShort,
setString, and so on) for setting IN parameter values
must specify types that are compatible with the defined type of
the input parameter. For instance, if the IN parameter has type
INTEGER, then the method setInt should be used.
If a parameter has Member type, use the PreparedStatement.setObject(int, Object)
method to set it. A OlapException will be thrown if the object is not
an instance of Member or does not belong to the
correct Hierarchy.
The method getParameterMetaData() returns a description of the
parameters, as in JDBC. The result is an OlapParameterMetaData.
Unlike JDBC, it is not necessary to assign a value to every parameter.
This is because OLAP parameters have a default value. Parameters have their
default value until they are set, and then retain their new values for each
subsequent execution of this PreparedOlapStatement.
- 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 TypeMethodDescriptionExecutes the MDX query in thisPreparedOlapStatementobject and returns theCellSetobject generated by the query.getCube()Returns the cube (or virtual cube) which this statement is based upon.Retrieves aCellSetMetaDataobject that contains information about the axes and cells of theCellSetobject that will be returned when thisPreparedOlapStatementobject is executed.Retrieves the number, types and properties of thisPreparedOlapStatementobject's parameters.booleanisSet(int parameterIndex) Returns whether the value of the designated parameter is set.voidunset(int parameterIndex) Unsets the value of the designated parameter.Methods inherited from interface org.olap4j.OlapStatement
addListener, executeOlapQuery, executeOlapQuery, getConnectionMethods inherited from interface org.olap4j.OlapWrapper
isWrapperFor, unwrapMethods inherited from interface java.sql.PreparedStatement
addBatch, clearParameters, execute, executeLargeUpdate, executeUpdate, setArray, setAsciiStream, setAsciiStream, setAsciiStream, setBigDecimal, setBinaryStream, setBinaryStream, setBinaryStream, setBlob, setBlob, setBlob, setBoolean, setByte, setBytes, setCharacterStream, setCharacterStream, setCharacterStream, setClob, setClob, setClob, setDate, setDate, setDouble, setFloat, setInt, setLong, setNCharacterStream, setNCharacterStream, setNClob, setNClob, setNClob, setNString, setNull, setNull, setObject, setObject, setObject, setObject, setObject, setRef, setRowId, setShort, setSQLXML, setString, setTime, setTime, setTimestamp, setTimestamp, setUnicodeStream, setURLMethods 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
-
executeQuery
Executes the MDX query in thisPreparedOlapStatementobject and returns theCellSetobject generated by the query.- Specified by:
executeQueryin interfacePreparedStatement- Returns:
- an
CellSetobject that contains the data produced by the query; nevernull - Throws:
OlapException- if a database access error occurs
-
getParameterMetaData
Retrieves the number, types and properties of thisPreparedOlapStatementobject's parameters.- Specified by:
getParameterMetaDatain interfacePreparedStatement- Returns:
- an
OlapParameterMetaDataobject that contains information about the number, types and properties of thisPreparedOlapStatementobject's parameters - Throws:
OlapException- if a database access error occurs- See Also:
-
getMetaData
Retrieves aCellSetMetaDataobject that contains information about the axes and cells of theCellSetobject that will be returned when thisPreparedOlapStatementobject is executed.- Specified by:
getMetaDatain interfacePreparedStatement- Returns:
- the description of this
CellSet's axes and cells - Throws:
OlapException- if a database access error occursSQLException
-
getCube
Cube getCube()Returns the cube (or virtual cube) which this statement is based upon.- Returns:
- cube this statement is based upon
-
isSet
Returns whether the value of the designated parameter is set.Note that you cannot tell whether the parameter is set by looking to see whether the value is
null, becausenullis a valid parameter value. When a parameter is not set, its value is derived by evaluating its default expression.To set the value call one of the
setXxxmethods. To unset the value, callunset(int).- Parameters:
parameterIndex- the first parameter is 1, the second is 2, ...- Returns:
- whether the parameter's value has been set
- Throws:
SQLException- if a database access error occurs
-
unset
Unsets the value of the designated parameter.- Parameters:
parameterIndex- the first parameter is 1, the second is 2, ...- Throws:
SQLException- if a database access error occurs- See Also:
-