diff options
Diffstat (limited to 'java/sql/PreparedStatement.java')
| -rw-r--r-- | java/sql/PreparedStatement.java | 472 |
1 files changed, 472 insertions, 0 deletions
diff --git a/java/sql/PreparedStatement.java b/java/sql/PreparedStatement.java new file mode 100644 index 000000000..02cf7eda5 --- /dev/null +++ b/java/sql/PreparedStatement.java @@ -0,0 +1,472 @@ +/************************************************************************* +/* PreparedStatement.java -- Interface for pre-compiled statements. +/* +/* Copyright (c) 1999 Free Software Foundation, Inc. +/* Written by Aaron M. Renn (arenn@urbanophile.com) +/* +/* This library is free software; you can redistribute it and/or modify +/* it under the terms of the GNU Library General Public License as published +/* by the Free Software Foundation, either version 2 of the License, or +/* (at your option) any later verion. +/* +/* This library is distributed in the hope that it will be useful, but +/* WITHOUT ANY WARRANTY; without even the implied warranty of +/* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +/* GNU Library General Public License for more details. +/* +/* You should have received a copy of the GNU Library General Public License +/* along with this library; if not, write to the Free Software Foundation +/* Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307 USA +/*************************************************************************/ + +package java.sql; + +import java.io.InputStream; +import java.io.Reader; +import java.math.BigDecimal; +import java.util.Calendar; + +/** + * This interface provides a mechanism for executing pre-compiled + * statements. This provides greater efficiency when calling the same + * statement multiple times. Parameters are allowed in a statement, + * providings for maximum reusability. + * + * @author Aaron M. Renn (arenn@urbanophile.com) + */ +public abstract interface PreparedStatement +{ + +/** + * This method populates the specified parameter with a SQL NULL value + * for the specified type. + * + * @param index The index of the parameter to set. + * @param type The SQL type identifier of the parameter from <code>Types</code> + * + * @exception SQLException If an error occurs. + */ +public abstract void +setNull(int index, int type) throws SQLException; + +/*************************************************************************/ + +/** + * This method populates the specified parameter with a SQL NULL value + * for the specified type. + * + * @param index The index of the parameter to set. + * @param type The SQL type identifier of the parameter from <code>Types</code> + * @param name The name of the data type, for user defined types. + * + * @exception SQLException If an error occurs. + */ +public abstract void +setNull(int index, int type, String name) throws SQLException; + +/*************************************************************************/ + +/** + * This method sets the specified parameter from the given Java + * <code>boolean</code> value. + * + * @param index The index of the parameter value to set. + * @param value The value of the parameter. + * + * @exception SQLException If an error occurs. + */ +public abstract void +setBoolean(int index, boolean value) throws SQLException; + +/*************************************************************************/ + +/** + * This method sets the specified parameter from the given Java + * <code>byte</code> value. + * + * @param index The index of the parameter value to set. + * @param value The value of the parameter. + * + * @exception SQLException If an error occurs. + */ +public abstract void +setByte(int index, byte value) throws SQLException; + +/*************************************************************************/ + +/** + * This method sets the specified parameter from the given Java + * <code>short</code> value. + * + * @param index The index of the parameter value to set. + * @param value The value of the parameter. + * + * @exception SQLException If an error occurs. + */ +public abstract void +setShort(int index, short value) throws SQLException; + +/*************************************************************************/ + +/** + * This method sets the specified parameter from the given Java + * <code>int</code> value. + * + * @param index The index of the parameter value to set. + * @param value The value of the parameter. + * + * @exception SQLException If an error occurs. + */ +public abstract void +setInt(int index, int value) throws SQLException; + +/*************************************************************************/ + +/** + * This method sets the specified parameter from the given Java + * <code>long</code> value. + * + * @param index The index of the parameter value to set. + * @param value The value of the parameter. + * + * @exception SQLException If an error occurs. + */ +public abstract void +setLong(int index, long value) throws SQLException; + +/*************************************************************************/ + +/** + * This method sets the specified parameter from the given Java + * <code>float</code> value. + * + * @param index The index of the parameter value to set. + * @param value The value of the parameter. + * + * @exception SQLException If an error occurs. + */ +public abstract void +setFloat(int index, float value) throws SQLException; + +/*************************************************************************/ + +/** + * This method sets the specified parameter from the given Java + * <code>double</code> value. + * + * @param index The index of the parameter value to set. + * @param value The value of the parameter. + * + * @exception SQLException If an error occurs. + */ +public abstract void +setDouble(int index, double value) throws SQLException; + +/*************************************************************************/ + +/** + * This method sets the specified parameter from the given Java + * <code>String</code> value. + * + * @param index The index of the parameter value to set. + * @param value The value of the parameter. + * + * @exception SQLException If an error occurs. + */ +public abstract void +setString(int index, String value) throws SQLException; + +/*************************************************************************/ + +/** + * This method sets the specified parameter from the given Java + * <code>byte</code> array value. + * + * @param index The index of the parameter value to set. + * @param value The value of the parameter. + * + * @exception SQLException If an error occurs. + */ +public abstract void +setBytes(int index, byte[] value) throws SQLException; + +/*************************************************************************/ + +/** + * This method sets the specified parameter from the given Java + * <code>java.sql.Date</code> value. + * + * @param index The index of the parameter value to set. + * @param value The value of the parameter. + * + * @exception SQLException If an error occurs. + */ +public abstract void +setDate(int index, java.sql.Date value) throws SQLException; + +/*************************************************************************/ + +/** + * This method sets the specified parameter from the given Java + * <code>java.sql.Date</code> value. + * + * @param index The index of the parameter value to set. + * @param value The value of the parameter. + * @param calendar The <code>Calendar</code> to use for timezone and locale. + * + * @exception SQLException If an error occurs. + */ +public abstract void +setDate(int index, java.sql.Date value, Calendar calendar) throws SQLException; + +/*************************************************************************/ + +/** + * This method sets the specified parameter from the given Java + * <code>java.sql.Time</code> value. + * + * @param index The index of the parameter value to set. + * @param value The value of the parameter. + * + * @exception SQLException If an error occurs. + */ +public abstract void +setTime(int index, java.sql.Time value) throws SQLException; + +/*************************************************************************/ + +/** + * This method sets the specified parameter from the given Java + * <code>java.sql.Time</code> value. + * + * @param index The index of the parameter value to set. + * @param value The value of the parameter. + * @param calendar The <code>Calendar</code> to use for timezone and locale. + * + * @exception SQLException If an error occurs. + */ +public abstract void +setTime(int index, java.sql.Time value, Calendar calendar) throws SQLException; + +/*************************************************************************/ + +/** + * This method sets the specified parameter from the given Java + * <code>java.sql.Timestamp</code> value. + * + * @param index The index of the parameter value to set. + * @param value The value of the parameter. + * + * @exception SQLException If an error occurs. + */ +public abstract void +setTimestamp(int index, java.sql.Timestamp value) throws SQLException; + +/*************************************************************************/ + +/** + * This method sets the specified parameter from the given Java + * <code>java.sql.Timestamp</code> value. + * + * @param index The index of the parameter value to set. + * @param value The value of the parameter. + * @param calendar The <code>Calendar</code> to use for timezone and locale. + * + * @exception SQLException If an error occurs. + */ +public abstract void +setTimestamp(int index, java.sql.Timestamp value, Calendar calendar) + throws SQLException; + +/*************************************************************************/ + +/** + * This method sets the specified parameter from the given Java + * ASCII <code>InputStream</code> value. + * + * @param index The index of the parameter value to set. + * @param value The value of the parameter. + * @param calendar The <code>Calendar</code> to use for timezone and locale. + * + * @exception SQLException If an error occurs. + */ +public abstract void +setAsciiStream(int index, InputStream value) throws SQLException; + +/*************************************************************************/ + +/** + * This method sets the specified parameter from the given Java + * Unicode UTF-8 <code>InputStream</code> value. + * + * @param index The index of the parameter value to set. + * @param value The value of the parameter. + * + * @exception SQLException If an error occurs. + */ +public abstract void +setUnicodeStream(int index, InputStream value) throws SQLException; + +/*************************************************************************/ + +/** + * This method sets the specified parameter from the given Java + * binary <code>InputStream</code> value. + * + * @param index The index of the parameter value to set. + * @param value The value of the parameter. + * + * @exception SQLException If an error occurs. + */ +public abstract void +setBinaryStream(int index, InputStream value) throws SQLException; + +/*************************************************************************/ + +/** + * This method sets the specified parameter from the given Java + * character <code>Reader</code> value. + * + * @param index The index of the parameter value to set. + * @param value The value of the parameter. + * + * @exception SQLException If an error occurs. + */ +public abstract void +setCharacterStream(int index, Reader value) throws SQLException; + +/*************************************************************************/ + +/** + * This method sets the specified parameter from the given Java + * <code>Ref</code> value. The default object type to SQL type mapping + * will be used. + * + * @param index The index of the parameter value to set. + * @param value The value of the parameter. + * + * @exception SQLException If an error occurs. + */ +public abstract void +setRef(int index, Ref value) throws SQLException; + +/*************************************************************************/ + +/** + * This method sets the specified parameter from the given Java + * <code>Blob</code> value. The default object type to SQL type mapping + * will be used. + * + * @param index The index of the parameter value to set. + * @param value The value of the parameter. + * + * @exception SQLException If an error occurs. + */ +public abstract void +setBlob(int index, Blob value) throws SQLException; + +/*************************************************************************/ + +/** + * This method sets the specified parameter from the given Java + * <code>Clob</code> value. The default object type to SQL type mapping + * will be used. + * + * @param index The index of the parameter value to set. + * @param value The value of the parameter. + * + * @exception SQLException If an error occurs. + */ +public abstract void +setClob(int index, Clob value) throws SQLException; + +/*************************************************************************/ + +/** + * This method sets the specified parameter from the given Java + * <code>Array</code> value. The default object type to SQL type mapping + * will be used. + * + * @param index The index of the parameter value to set. + * @param value The value of the parameter. + * + * @exception SQLException If an error occurs. + */ +public abstract void +setArray(int index, Array value) throws SQLException; + +/*************************************************************************/ + +/** + * This method sets the specified parameter from the given Java + * <code>Object</code> value. The default object type to SQL type mapping + * will be used. + * + * @param index The index of the parameter value to set. + * @param value The value of the parameter. + * + * @exception SQLException If an error occurs. + */ +public abstract void +setObject(int index, Object value) throws SQLException; + +/*************************************************************************/ + +/** + * This method sets the specified parameter from the given Java + * <code>Object</code> value. The specified SQL object type will be used. + * + * @param index The index of the parameter value to set. + * @param value The value of the parameter. + * @param type The SQL type to use for the parameter, from <code>Types</code> + * + * @exception SQLException If an error occurs. + * + * @see Types + */ +public abstract void +setObject(int index, Object value, int type) throws SQLException; + +/*************************************************************************/ + +/** + * This method sets the specified parameter from the given Java + * <code>Object</code> value. The specified SQL object type will be used. + * + * @param index The index of the parameter value to set. + * @param value The value of the parameter. + * @param type The SQL type to use for the parameter, from <code>Types</code> + * @param scale The scale of the value, for numeric values only. + * + * @exception SQLException If an error occurs. + * + * @see Types + */ +public abstract void +setObject(int index, Object value, int type, int scale) throws SQLException; + +/*************************************************************************/ + +/** + * This method clears all of the input parameter that have been + * set on this statement. + * + * @exception SQLException If an error occurs. + */ +public abstract void +clearParameters() throws SQLException; + +/*************************************************************************/ + +/** + * This method returns meta data for the result set from this statement. + * + * @return Meta data for the result set from this statement. + * + * @exception SQLException If an error occurs. + */ +public abstract ResultSetMetaData +getMetaData() throws SQLException; + +} // interface PreparedStatement + |
