public class PreparedStatement extends Object
 A prepared statement can be executed once concrete values have been provided
 for the bound variables. A prepared statement and the values for its
 bound variables constitute a BoundStatement and can be executed (by
 Session.execute(java.lang.String)).
 
 A PreparedStatement object allows you to define specific defaults
 for the different properties of a Query (Consistency level, tracing, ...),
 in which case those properties will be inherited as default by every
 BoundedStatement created from the {PreparedStatement}. The default for those
 PreparedStatement properties is the same that in Query if the
 PreparedStatement is created by Session.prepare(String) but will inherit
 of the properties of the Statement used for the preparation if
 Session.prepare(Statement) is used.
| Modifier and Type | Method and Description | 
|---|---|
BoundStatement | 
bind()
Creates a new BoundStatement object for this prepared statement. 
 | 
BoundStatement | 
bind(Object... values)
Creates a new BoundStatement object and bind its variables to the
 provided values. 
 | 
PreparedStatement | 
disableTracing()
Convenience method to disable tracing for all bound statements created
 from this prepared statement. 
 | 
PreparedStatement | 
enableTracing()
Convenience method to enables tracing for all bound statements created
 from this prepared statement. 
 | 
ConsistencyLevel | 
getConsistencyLevel()
Returns the default consistency level set through  
setConsistencyLevel(com.datastax.driver.core.ConsistencyLevel). | 
String | 
getQueryKeyspace()
Returns the keyspace at the time that this prepared statement was prepared,
 (that is the one on which this statement applies unless it specified a
 keyspace explicitly). 
 | 
String | 
getQueryString()
Returns the string of the query that was prepared to yield this  
PreparedStatement. | 
RetryPolicy | 
getRetryPolicy()
Returns the retry policy sets for this prepared statement, if any. 
 | 
ColumnDefinitions | 
getVariables()
Returns metadata on the bounded variables of this prepared statement. 
 | 
boolean | 
isTracing()
Returns whether tracing is enabled for this prepared statement, i.e. 
 | 
PreparedStatement | 
setConsistencyLevel(ConsistencyLevel consistency)
Sets a default consistency level for all bound statements 
 created from this prepared statement. 
 | 
PreparedStatement | 
setRetryPolicy(RetryPolicy policy)
Convenience method to set a default retry policy for the  
BoundStatement
 created from this prepared statement. | 
PreparedStatement | 
setRoutingKey(ByteBuffer... routingKeyComponents)
Sets the routing key for this query. 
 | 
PreparedStatement | 
setRoutingKey(ByteBuffer routingKey)
Sets the routing key for this prepared statement. 
 | 
public ColumnDefinitions getVariables()
public BoundStatement bind(Object... values)
 While the number of values cannot be greater than the number of bound
 variables, the number of values may be fewer than the number of bound
 variables. In that case, the remaining variables will have to be bound
 to values by another mean because the resulting BoundStatement
 being executable.
 
 This method is a convenience for new BoundStatement(this).bind(...).
values - the values to bind to the variables of the newly created
 BoundStatement.BoundStatement with its variables
 bound to values.IllegalArgumentException - if more values are provided
 than there is of bound variables in this statement.InvalidTypeException - if any of the provided value is not of
 correct type to be bound to the corresponding bind variable.NullPointerException - if one of values is a collection
 (List, Set or Map) containing a null value. Nulls are not supported in
 collections by CQL.BoundStatement.bind(java.lang.Object...)public BoundStatement bind()
 This method do not bind any values to any of the prepared variables. Said
 values need to be bound on the resulting statement using BoundStatement's
 setters methods (BoundStatement.setInt(int, int), BoundStatement.setLong(int, long), ...).
BoundStatement.public PreparedStatement setRoutingKey(ByteBuffer routingKey)
While you can provide a fixed routing key for all executions of this prepared statement with this method, it is not mandatory to provide one through this method. This method should only be used if the partition key of the prepared query is not part of the prepared variables (that is if the partition key is fixed).
Note that if the partition key is part of the prepared variables, the routing key will be automatically computed once those variables are bound.
routingKey - the raw (binary) value to use as routing key.PreparedStatement object.Query.getRoutingKey()public PreparedStatement setRoutingKey(ByteBuffer... routingKeyComponents)
 See setRoutingKey(ByteBuffer) for more information. This
 method is a variant for when the query partition key is composite and
 the routing key must be built from multiple values.
routingKeyComponents - the raw (binary) values to compose to obtain
 the routing key.PreparedStatement object.Query.getRoutingKey()public PreparedStatement setConsistencyLevel(ConsistencyLevel consistency)
If no consistency level is set through this method, the bound statement created from this object will use the default consistency level (ONE).
Changing the default consistency level is not retroactive, it only applies to BoundStatement created after the change.
consistency - the default consistency level to set.PreparedStatement object.public ConsistencyLevel getConsistencyLevel()
setConsistencyLevel(com.datastax.driver.core.ConsistencyLevel).null if no
 consistency level has been set through this object setConsistencyLevel
 method.public String getQueryString()
PreparedStatement.
 
 Note that a CQL3 query may be implicitly applied to the current keyspace
 (that is, if the keyspace is not explicitly qualified in the query
 itself). For prepared queries, the current keyspace used is the one at
 the time of the preparation, not the one at execution time. The current
 keyspace at the time of the preparation can be retrieved through
 getQueryKeyspace().
PreparedStatement.public String getQueryKeyspace()
null if no keyspace was set when the query was prepared (which
 is possible since keyspaces can be explicitly qualified in queries and
 so may not require a current keyspace to be set).public PreparedStatement enableTracing()
Query object.public PreparedStatement disableTracing()
PreparedStatement object.public boolean isTracing()
true if this prepared statement has tracing enabled,
 false otherwise.public PreparedStatement setRetryPolicy(RetryPolicy policy)
BoundStatement
 created from this prepared statement.
 
 Note that this method is competely optional. By default, the retry policy
 used is the one returned Policies.getRetryPolicy()
 in the cluster configuration. This method is only useful if you want
 to override this default policy for the BoundStatement created from
 this PreparedStatement.
 to punctually override the default policy for this request.
policy - the retry policy to use for this prepared statement.PreparedStatement object.public RetryPolicy getRetryPolicy()
null if none have been set.Copyright © 2014. All Rights Reserved.