diff options
Diffstat (limited to 'luni/src/main/java/javax/sql/RowSetMetaData.java')
-rw-r--r-- | luni/src/main/java/javax/sql/RowSetMetaData.java | 293 |
1 files changed, 293 insertions, 0 deletions
diff --git a/luni/src/main/java/javax/sql/RowSetMetaData.java b/luni/src/main/java/javax/sql/RowSetMetaData.java new file mode 100644 index 0000000..ad07199 --- /dev/null +++ b/luni/src/main/java/javax/sql/RowSetMetaData.java @@ -0,0 +1,293 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package javax.sql; + +import java.sql.ResultSetMetaData; +import java.sql.SQLException; + +/** + * An interface which provides facilities for getting information about the + * columns in a {@code RowSet}. + * <p> + * {@code RowSetMetaData} extends {@link java.sql.ResultSetMetaData}, adding new + * operations for carrying out value sets. + * <p> + * Application code would not normally call this interface directly. It would be + * called internally when {@code RowSet.execute} is called. + * + * @see RowSetInternal#setMetaData(RowSetMetaData) + */ +public interface RowSetMetaData extends ResultSetMetaData { + + /** + * Sets automatic numbering for a specified column in the {@code RowSet}. If + * automatic numbering is on, the column is read-only. The default value for + * the auto increment parameter is {@code false}. + * + * @param columnIndex + * the index number for the column; the first column's index is + * 1. + * @param autoIncrement + * {@code true} to set automatic numbering on, {@code false} to + * turn it off (default). + * @throws SQLException + * if a problem occurs accessing the database. + */ + public void setAutoIncrement(int columnIndex, boolean autoIncrement) + throws SQLException; + + /** + * Sets the case sensitive property for a specified column in the {@code + * RowSet}. The default is that the column is not case sensitive. + * + * @param columnIndex + * the index number for the column; the first column's index is + * 1. + * @param caseSensitive + * {@code true} to make the column case sensitive, {@code false} + * to make it case insensitive (default). + * @throws SQLException + * if a problem occurs accessing the database. + */ + public void setCaseSensitive(int columnIndex, boolean caseSensitive) + throws SQLException; + + /** + * Sets the catalog name for a specified column in the {@code RowSet}. + * + * @param columnIndex + * the index number for the column; the first column's index is + * 1. + * @param catalogName + * the new catalog's name. + * @throws SQLException + * if a problem occurs accessing the database. + */ + public void setCatalogName(int columnIndex, String catalogName) + throws SQLException; + + /** + * Sets the number of columns contained in the row set. + * + * @param columnCount + * the number of columns contained in the {@code RowSet}. + * @throws SQLException + * if a problem occurs accessing the database. + */ + public void setColumnCount(int columnCount) throws SQLException; + + /** + * Sets the normal maximum width in characters for a specified column in the + * {@code RowSet}. + * + * @param columnIndex + * the index number for the column; the first column's index is + * 1. + * @param displaySize + * the normal maximum column width in characters. + * @throws SQLException + * if a problem occurs accessing the database. + */ + public void setColumnDisplaySize(int columnIndex, int displaySize) + throws SQLException; + + /** + * Sets the suggested name as label for the column contained in the {@code + * RowSet}. The label is an alias for printing and displaying purposes. + * + * @param columnIndex + * the index number for the column; the first column's index is + * 1. + * @param theLabel + * the alias name for the column. + * @throws SQLException + * if a problem occurs accessing the database. + */ + public void setColumnLabel(int columnIndex, String theLabel) + throws SQLException; + + /** + * Sets the column name for a specified column in the {@code RowSet}. + * + * @param columnIndex + * the index number for the column; the first column's index is + * 1. + * @param theColumnName + * the column's label. + * @throws SQLException + * if a problem occurs accessing the database. + */ + public void setColumnName(int columnIndex, String theColumnName) + throws SQLException; + + /** + * Sets the SQL type for a specified column in the {@code RowSet}. + * + * @param columnIndex + * the index number for the column; the first column's index is + * 1. + * @param theSQLType + * the SQL Type, as defined by {@code java.sql.Types}. + * @throws SQLException + * if a problem occurs accessing the database. + */ + public void setColumnType(int columnIndex, int theSQLType) + throws SQLException; + + /** + * Sets the type name for a specified column in the {@code RowSet}, where + * the data type is specific to the data source. + * + * @param columnIndex + * the index number for the column; the first column's index is + * 1. + * @param theTypeName + * the SQL type name for the column. + * @throws SQLException + * if a problem occurs accessing the database. + */ + public void setColumnTypeName(int columnIndex, String theTypeName) + throws SQLException; + + /** + * Sets whether a specified column is a currency value. The default value is + * {@code false}. + * + * @param columnIndex + * the index number for the column; the first column's index is + * 1. + * @param isCurrency + * {@code true} if the column should be treated as a currency + * value, {@code false} if it should not be treated as a currency + * value (default). + * @throws SQLException + * if a problem occurs accessing the database. + */ + public void setCurrency(int columnIndex, boolean isCurrency) + throws SQLException; + + /** + * Sets whether a specified column can contain SQL {@code NULL} values. + * + * @param columnIndex + * the index number for the column; the first column's index is + * 1. + * @param nullability + * an integer which is one of the following values: + * <ul> + * <li>{@code ResultSetMetaData.columnNoNulls}</li> + * <li>{@code ResultSetMetaData.columnNullable}</li> + * <li>{@code ResultSetMetaData.columnNullableUnknown}</li> + * </ul> + * <p> + * The default value is {@code + * ResultSetMetaData.columnNullableUnknown}. + * @throws SQLException + * if a problem occurs accessing the database. + */ + public void setNullable(int columnIndex, int nullability) + throws SQLException; + + /** + * Sets the number of decimal digits for a specified column in the {@code + * RowSet}. + * + * @param columnIndex + * the index number for the column; the first column's index is + * 1. + * @param thePrecision + * the number of decimal digits. + * @throws SQLException + * if a problem occurs accessing the database. + */ + public void setPrecision(int columnIndex, int thePrecision) + throws SQLException; + + /** + * Declares how many decimal digits there should be after a decimal point + * for the column specified by {@code columnIndex}. + * + * @param columnIndex + * the index number for the column; the first column's index is + * 1. + * @param theScale + * the number of digits after the decimal point. + * @throws SQLException + * if a problem occurs accessing the database. + */ + public void setScale(int columnIndex, int theScale) throws SQLException; + + /** + * Sets the schema name for a specified column in the {@code RowSet}. + * + * @param columnIndex + * the index number for the column; the first column's index is + * 1. + * @param theSchemaName + * a {@code String} containing the schema name. + * @throws SQLException + * if a problem occurs accessing the database. + */ + public void setSchemaName(int columnIndex, String theSchemaName) + throws SQLException; + + /** + * Sets whether a specified column can be used in a search involving a + * {@code WHERE} clause. The default value is {@code false}. + * + * @param columnIndex + * the index number for the column; the first column's index is + * 1. + * @param isSearchable + * {@code true} of the column can be used in a {@code WHERE} + * clause search, {@code false} otherwise. + * @throws SQLException + * if a problem occurs accessing the database. + */ + public void setSearchable(int columnIndex, boolean isSearchable) + throws SQLException; + + /** + * Sets if a specified column can contain signed numbers. + * + * @param columnIndex + * the index number for the column; the first column's index is + * 1. + * @param isSigned + * {@code true} if the column can contain signed numbers, {@code + * false} otherwise. + * @throws SQLException + * if a problem occurs accessing the database. + */ + public void setSigned(int columnIndex, boolean isSigned) + throws SQLException; + + /** + * Sets the table name for a specified column in the {@code RowSet}. + * + * @param columnIndex + * the index number for the column; the first column's index is + * 1. + * @param theTableName + * the table name for the column. + * @throws SQLException + * if a problem occurs accessing the database. + */ + public void setTableName(int columnIndex, String theTableName) + throws SQLException; +} |