/*
* Copyright 2004-2019 H2 Group. Multiple-Licensed under the MPL 2.0,
* and the EPL 1.0 (http://h2database.com/html/license.html).
* Initial Developer: H2 Group
*/
package org.h2.expression;
import org.h2.message.DbException;
import org.h2.value.Value;
The interface for client side (remote) and server side parameters.
/**
* The interface for client side (remote) and server side parameters.
*/
public interface ParameterInterface {
Set the value of the parameter.
Params: - value – the new value
- closeOld – if the old value (if one is set) should be closed
/**
* Set the value of the parameter.
*
* @param value the new value
* @param closeOld if the old value (if one is set) should be closed
*/
void setValue(Value value, boolean closeOld);
Get the value of the parameter if set.
Returns: the value or null
/**
* Get the value of the parameter if set.
*
* @return the value or null
*/
Value getParamValue();
Check if the value is set.
Throws: - DbException – if not set.
/**
* Check if the value is set.
*
* @throws DbException if not set.
*/
void checkSet() throws DbException;
Is the value of a parameter set.
Returns: true if set
/**
* Is the value of a parameter set.
*
* @return true if set
*/
boolean isValueSet();
Get the expected data type of the parameter if no value is set, or the
data type of the value if one is set.
Returns: the data type
/**
* Get the expected data type of the parameter if no value is set, or the
* data type of the value if one is set.
*
* @return the data type
*/
int getValueType();
Get the expected precision of this parameter.
Returns: the expected precision
/**
* Get the expected precision of this parameter.
*
* @return the expected precision
*/
long getPrecision();
Get the expected scale of this parameter.
Returns: the expected scale
/**
* Get the expected scale of this parameter.
*
* @return the expected scale
*/
int getScale();
Check if this column is nullable.
Returns: Column.NULLABLE_*
/**
* Check if this column is nullable.
*
* @return Column.NULLABLE_*
*/
int getNullable();
}