1*b1cdbd2cSJim Jagielski/************************************************************** 2*b1cdbd2cSJim Jagielski * 3*b1cdbd2cSJim Jagielski * Licensed to the Apache Software Foundation (ASF) under one 4*b1cdbd2cSJim Jagielski * or more contributor license agreements. See the NOTICE file 5*b1cdbd2cSJim Jagielski * distributed with this work for additional information 6*b1cdbd2cSJim Jagielski * regarding copyright ownership. The ASF licenses this file 7*b1cdbd2cSJim Jagielski * to you under the Apache License, Version 2.0 (the 8*b1cdbd2cSJim Jagielski * "License"); you may not use this file except in compliance 9*b1cdbd2cSJim Jagielski * with the License. You may obtain a copy of the License at 10*b1cdbd2cSJim Jagielski * 11*b1cdbd2cSJim Jagielski * http://www.apache.org/licenses/LICENSE-2.0 12*b1cdbd2cSJim Jagielski * 13*b1cdbd2cSJim Jagielski * Unless required by applicable law or agreed to in writing, 14*b1cdbd2cSJim Jagielski * software distributed under the License is distributed on an 15*b1cdbd2cSJim Jagielski * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY 16*b1cdbd2cSJim Jagielski * KIND, either express or implied. See the License for the 17*b1cdbd2cSJim Jagielski * specific language governing permissions and limitations 18*b1cdbd2cSJim Jagielski * under the License. 19*b1cdbd2cSJim Jagielski * 20*b1cdbd2cSJim Jagielski *************************************************************/ 21*b1cdbd2cSJim Jagielski 22*b1cdbd2cSJim Jagielski 23*b1cdbd2cSJim Jagielski#ifndef __com_sun_star_sdbc_XResultSetMetaData_idl__ 24*b1cdbd2cSJim Jagielski#define __com_sun_star_sdbc_XResultSetMetaData_idl__ 25*b1cdbd2cSJim Jagielski 26*b1cdbd2cSJim Jagielski#ifndef __com_sun_star_uno_XInterface_idl__ 27*b1cdbd2cSJim Jagielski#include <com/sun/star/uno/XInterface.idl> 28*b1cdbd2cSJim Jagielski#endif 29*b1cdbd2cSJim Jagielski 30*b1cdbd2cSJim Jagielski#ifndef __com_sun_star_sdbc_SQLException_idl__ 31*b1cdbd2cSJim Jagielski#include <com/sun/star/sdbc/SQLException.idl> 32*b1cdbd2cSJim Jagielski#endif 33*b1cdbd2cSJim Jagielski 34*b1cdbd2cSJim Jagielski module com { module sun { module star { module sdbc { 35*b1cdbd2cSJim Jagielski 36*b1cdbd2cSJim Jagielski 37*b1cdbd2cSJim Jagielski/** can be used to find out about the types and properties 38*b1cdbd2cSJim Jagielski of the columns in a ResultSet. 39*b1cdbd2cSJim Jagielski */ 40*b1cdbd2cSJim Jagielskipublished interface XResultSetMetaData: com::sun::star::uno::XInterface 41*b1cdbd2cSJim Jagielski{ 42*b1cdbd2cSJim Jagielski 43*b1cdbd2cSJim Jagielski /** returns the number of columns in this ResultSet. 44*b1cdbd2cSJim Jagielski @returns 45*b1cdbd2cSJim Jagielski the column count 46*b1cdbd2cSJim Jagielski @throws SQLException 47*b1cdbd2cSJim Jagielski if a database access error occurs. 48*b1cdbd2cSJim Jagielski */ 49*b1cdbd2cSJim Jagielski long getColumnCount() raises (SQLException); 50*b1cdbd2cSJim Jagielski //------------------------------------------------------------------------- 51*b1cdbd2cSJim Jagielski 52*b1cdbd2cSJim Jagielski /** indicates whether the column is automatically numbered, thus read-only. 53*b1cdbd2cSJim Jagielski @param column 54*b1cdbd2cSJim Jagielski the first column is 1, the second is 2, 55*b1cdbd2cSJim Jagielski @returns 56*b1cdbd2cSJim Jagielski <TRUE/> if so 57*b1cdbd2cSJim Jagielski @throws SQLException 58*b1cdbd2cSJim Jagielski if a database access error occurs. 59*b1cdbd2cSJim Jagielski */ 60*b1cdbd2cSJim Jagielski boolean isAutoIncrement([in]long column) raises (SQLException); 61*b1cdbd2cSJim Jagielski //------------------------------------------------------------------------- 62*b1cdbd2cSJim Jagielski 63*b1cdbd2cSJim Jagielski /** indicates whether a column's case matters. 64*b1cdbd2cSJim Jagielski @param column 65*b1cdbd2cSJim Jagielski the first column is 1, the second is 2, 66*b1cdbd2cSJim Jagielski @returns 67*b1cdbd2cSJim Jagielski <TRUE/> if so 68*b1cdbd2cSJim Jagielski @throws SQLException 69*b1cdbd2cSJim Jagielski if a database access error occurs. 70*b1cdbd2cSJim Jagielski */ 71*b1cdbd2cSJim Jagielski boolean isCaseSensitive([in]long column) raises (SQLException); 72*b1cdbd2cSJim Jagielski //------------------------------------------------------------------------- 73*b1cdbd2cSJim Jagielski 74*b1cdbd2cSJim Jagielski /** indicates whether the column can be used in a where clause. 75*b1cdbd2cSJim Jagielski @param column 76*b1cdbd2cSJim Jagielski the first column is 1, the second is 2, 77*b1cdbd2cSJim Jagielski @returns 78*b1cdbd2cSJim Jagielski <TRUE/> if so 79*b1cdbd2cSJim Jagielski @throws SQLException 80*b1cdbd2cSJim Jagielski if a database access error occurs. 81*b1cdbd2cSJim Jagielski */ 82*b1cdbd2cSJim Jagielski boolean isSearchable([in]long column) raises (SQLException); 83*b1cdbd2cSJim Jagielski //------------------------------------------------------------------------- 84*b1cdbd2cSJim Jagielski 85*b1cdbd2cSJim Jagielski /** indicates whether the column is a cash value. 86*b1cdbd2cSJim Jagielski @param column 87*b1cdbd2cSJim Jagielski the first column is 1, the second is 2, 88*b1cdbd2cSJim Jagielski @returns 89*b1cdbd2cSJim Jagielski <TRUE/> if so 90*b1cdbd2cSJim Jagielski @throws SQLException 91*b1cdbd2cSJim Jagielski if a database access error occurs. 92*b1cdbd2cSJim Jagielski */ 93*b1cdbd2cSJim Jagielski boolean isCurrency([in]long column) raises (SQLException); 94*b1cdbd2cSJim Jagielski //------------------------------------------------------------------------- 95*b1cdbd2cSJim Jagielski 96*b1cdbd2cSJim Jagielski /** indicates the nullability of values in the designated column.@see com::sun::star::sdbc::ColumnValue 97*b1cdbd2cSJim Jagielski @param column 98*b1cdbd2cSJim Jagielski the first column is 1, the second is 2, 99*b1cdbd2cSJim Jagielski @returns 100*b1cdbd2cSJim Jagielski <TRUE/> if so 101*b1cdbd2cSJim Jagielski @throws SQLException 102*b1cdbd2cSJim Jagielski if a database access error occurs. 103*b1cdbd2cSJim Jagielski */ 104*b1cdbd2cSJim Jagielski long isNullable([in]long column) raises (SQLException); 105*b1cdbd2cSJim Jagielski //------------------------------------------------------------------------- 106*b1cdbd2cSJim Jagielski 107*b1cdbd2cSJim Jagielski /** indicates whether values in the column are signed numbers. 108*b1cdbd2cSJim Jagielski @param column 109*b1cdbd2cSJim Jagielski the first column is 1, the second is 2, 110*b1cdbd2cSJim Jagielski @returns 111*b1cdbd2cSJim Jagielski <TRUE/> if so 112*b1cdbd2cSJim Jagielski @throws SQLException 113*b1cdbd2cSJim Jagielski if a database access error occurs. 114*b1cdbd2cSJim Jagielski */ 115*b1cdbd2cSJim Jagielski boolean isSigned([in]long column) raises (SQLException); 116*b1cdbd2cSJim Jagielski //------------------------------------------------------------------------- 117*b1cdbd2cSJim Jagielski 118*b1cdbd2cSJim Jagielski /** indicates the column's normal max width in chars. 119*b1cdbd2cSJim Jagielski @param column 120*b1cdbd2cSJim Jagielski the first column is 1, the second is 2, 121*b1cdbd2cSJim Jagielski @returns 122*b1cdbd2cSJim Jagielski the normal maximum number of characters allowed as the width of the designated column 123*b1cdbd2cSJim Jagielski @throws SQLException 124*b1cdbd2cSJim Jagielski if a database access error occurs. 125*b1cdbd2cSJim Jagielski */ 126*b1cdbd2cSJim Jagielski long getColumnDisplaySize([in]long column) raises (SQLException); 127*b1cdbd2cSJim Jagielski //------------------------------------------------------------------------- 128*b1cdbd2cSJim Jagielski 129*b1cdbd2cSJim Jagielski /** gets the suggested column title for use in printouts and 130*b1cdbd2cSJim Jagielski displays. 131*b1cdbd2cSJim Jagielski @param column 132*b1cdbd2cSJim Jagielski the first column is 1, the second is 2, 133*b1cdbd2cSJim Jagielski @returns 134*b1cdbd2cSJim Jagielski the suggested column title 135*b1cdbd2cSJim Jagielski @throws SQLException 136*b1cdbd2cSJim Jagielski if a database access error occurs. 137*b1cdbd2cSJim Jagielski */ 138*b1cdbd2cSJim Jagielski string getColumnLabel([in]long column) raises (SQLException); 139*b1cdbd2cSJim Jagielski //------------------------------------------------------------------------- 140*b1cdbd2cSJim Jagielski 141*b1cdbd2cSJim Jagielski /** gets a column's name. 142*b1cdbd2cSJim Jagielski @param column 143*b1cdbd2cSJim Jagielski the first column is 1, the second is 2, 144*b1cdbd2cSJim Jagielski @returns 145*b1cdbd2cSJim Jagielski the column name 146*b1cdbd2cSJim Jagielski @throws SQLException 147*b1cdbd2cSJim Jagielski if a database access error occurs. 148*b1cdbd2cSJim Jagielski */ 149*b1cdbd2cSJim Jagielski string getColumnName([in]long column) raises (SQLException); 150*b1cdbd2cSJim Jagielski //------------------------------------------------------------------------- 151*b1cdbd2cSJim Jagielski 152*b1cdbd2cSJim Jagielski /** gets a column's table's schema. 153*b1cdbd2cSJim Jagielski @param column 154*b1cdbd2cSJim Jagielski the first column is 1, the second is 2, 155*b1cdbd2cSJim Jagielski @returns 156*b1cdbd2cSJim Jagielski the schema name 157*b1cdbd2cSJim Jagielski @throws SQLException 158*b1cdbd2cSJim Jagielski if a database access error occurs. 159*b1cdbd2cSJim Jagielski */ 160*b1cdbd2cSJim Jagielski string getSchemaName([in]long column) raises (SQLException); 161*b1cdbd2cSJim Jagielski //------------------------------------------------------------------------- 162*b1cdbd2cSJim Jagielski 163*b1cdbd2cSJim Jagielski /** gets a column's number of decimal digits. 164*b1cdbd2cSJim Jagielski @param column 165*b1cdbd2cSJim Jagielski the first column is 1, the second is 2, 166*b1cdbd2cSJim Jagielski @returns 167*b1cdbd2cSJim Jagielski precision 168*b1cdbd2cSJim Jagielski @throws SQLException 169*b1cdbd2cSJim Jagielski if a database access error occurs. 170*b1cdbd2cSJim Jagielski */ 171*b1cdbd2cSJim Jagielski long getPrecision([in]long column) raises (SQLException); 172*b1cdbd2cSJim Jagielski //------------------------------------------------------------------------- 173*b1cdbd2cSJim Jagielski 174*b1cdbd2cSJim Jagielski /** gets a column's number of digits to right of the decimal point. 175*b1cdbd2cSJim Jagielski @param column 176*b1cdbd2cSJim Jagielski the first column is 1, the second is 2, 177*b1cdbd2cSJim Jagielski @returns 178*b1cdbd2cSJim Jagielski scale 179*b1cdbd2cSJim Jagielski @throws SQLException 180*b1cdbd2cSJim Jagielski if a database access error occurs. 181*b1cdbd2cSJim Jagielski */ 182*b1cdbd2cSJim Jagielski long getScale([in]long column) raises (SQLException); 183*b1cdbd2cSJim Jagielski //------------------------------------------------------------------------- 184*b1cdbd2cSJim Jagielski 185*b1cdbd2cSJim Jagielski /** gets a column's table name. 186*b1cdbd2cSJim Jagielski @param column 187*b1cdbd2cSJim Jagielski the first column is 1, the second is 2, 188*b1cdbd2cSJim Jagielski @returns 189*b1cdbd2cSJim Jagielski the table name 190*b1cdbd2cSJim Jagielski @throws SQLException 191*b1cdbd2cSJim Jagielski if a database access error occurs. 192*b1cdbd2cSJim Jagielski */ 193*b1cdbd2cSJim Jagielski string getTableName([in]long column) raises (SQLException); 194*b1cdbd2cSJim Jagielski //------------------------------------------------------------------------- 195*b1cdbd2cSJim Jagielski 196*b1cdbd2cSJim Jagielski /** gets a column's table's catalog name. 197*b1cdbd2cSJim Jagielski @param column 198*b1cdbd2cSJim Jagielski the first column is 1, the second is 2, 199*b1cdbd2cSJim Jagielski @returns 200*b1cdbd2cSJim Jagielski the catalog name 201*b1cdbd2cSJim Jagielski @throws SQLException 202*b1cdbd2cSJim Jagielski if a database access error occurs. 203*b1cdbd2cSJim Jagielski */ 204*b1cdbd2cSJim Jagielski string getCatalogName([in]long column) raises (SQLException); 205*b1cdbd2cSJim Jagielski //------------------------------------------------------------------------- 206*b1cdbd2cSJim Jagielski 207*b1cdbd2cSJim Jagielski /** retrieves a column's SQL type. 208*b1cdbd2cSJim Jagielski @param column 209*b1cdbd2cSJim Jagielski the first column is 1, the second is 2, 210*b1cdbd2cSJim Jagielski @returns 211*b1cdbd2cSJim Jagielski the column type 212*b1cdbd2cSJim Jagielski @throws SQLException 213*b1cdbd2cSJim Jagielski if a database access error occurs. 214*b1cdbd2cSJim Jagielski */ 215*b1cdbd2cSJim Jagielski long getColumnType([in]long column) raises (SQLException); 216*b1cdbd2cSJim Jagielski //------------------------------------------------------------------------- 217*b1cdbd2cSJim Jagielski 218*b1cdbd2cSJim Jagielski /** retrieves a column's database-specific type name. 219*b1cdbd2cSJim Jagielski @param column 220*b1cdbd2cSJim Jagielski the first column is 1, the second is 2, 221*b1cdbd2cSJim Jagielski @returns 222*b1cdbd2cSJim Jagielski the type name 223*b1cdbd2cSJim Jagielski @throws SQLException 224*b1cdbd2cSJim Jagielski if a database access error occurs. 225*b1cdbd2cSJim Jagielski */ 226*b1cdbd2cSJim Jagielski string getColumnTypeName([in]long column) raises (SQLException); 227*b1cdbd2cSJim Jagielski //------------------------------------------------------------------------- 228*b1cdbd2cSJim Jagielski 229*b1cdbd2cSJim Jagielski /** indicates whether a column is definitely not writable. 230*b1cdbd2cSJim Jagielski @param column 231*b1cdbd2cSJim Jagielski the first column is 1, the second is 2, 232*b1cdbd2cSJim Jagielski @returns 233*b1cdbd2cSJim Jagielski <TRUE/> if so 234*b1cdbd2cSJim Jagielski @throws SQLException 235*b1cdbd2cSJim Jagielski if a database access error occurs. 236*b1cdbd2cSJim Jagielski */ 237*b1cdbd2cSJim Jagielski boolean isReadOnly([in]long column) raises (SQLException); 238*b1cdbd2cSJim Jagielski //------------------------------------------------------------------------- 239*b1cdbd2cSJim Jagielski 240*b1cdbd2cSJim Jagielski /** indicates whether it is possible for a write on the column to succeed. 241*b1cdbd2cSJim Jagielski @param column 242*b1cdbd2cSJim Jagielski the first column is 1, the second is 2, 243*b1cdbd2cSJim Jagielski @returns 244*b1cdbd2cSJim Jagielski <TRUE/> if so 245*b1cdbd2cSJim Jagielski @throws SQLException 246*b1cdbd2cSJim Jagielski if a database access error occurs. 247*b1cdbd2cSJim Jagielski */ 248*b1cdbd2cSJim Jagielski boolean isWritable([in]long column) raises (SQLException); 249*b1cdbd2cSJim Jagielski //------------------------------------------------------------------------- 250*b1cdbd2cSJim Jagielski 251*b1cdbd2cSJim Jagielski /** indicates whether a write on the column will definitely succeed. 252*b1cdbd2cSJim Jagielski @param column 253*b1cdbd2cSJim Jagielski the first column is 1, the second is 2, 254*b1cdbd2cSJim Jagielski @returns 255*b1cdbd2cSJim Jagielski <TRUE/> if so 256*b1cdbd2cSJim Jagielski @throws SQLException 257*b1cdbd2cSJim Jagielski if a database access error occurs. 258*b1cdbd2cSJim Jagielski */ 259*b1cdbd2cSJim Jagielski boolean isDefinitelyWritable([in]long column) raises (SQLException); 260*b1cdbd2cSJim Jagielski //------------------------------------------------------------------------- 261*b1cdbd2cSJim Jagielski 262*b1cdbd2cSJim Jagielski /** returns the fully-qualified name of the service whose instances 263*b1cdbd2cSJim Jagielski are manufactured if the method 264*b1cdbd2cSJim Jagielski <member scope="com::sun::star::sdbc">XResultSet::.getObject()</member> 265*b1cdbd2cSJim Jagielski is called to retrieve a value from the column. 266*b1cdbd2cSJim Jagielski @param column 267*b1cdbd2cSJim Jagielski the first column is 1, the second is 2, 268*b1cdbd2cSJim Jagielski @returns 269*b1cdbd2cSJim Jagielski the service name 270*b1cdbd2cSJim Jagielski @throws SQLException 271*b1cdbd2cSJim Jagielski if a database access error occurs. 272*b1cdbd2cSJim Jagielski */ 273*b1cdbd2cSJim Jagielski string getColumnServiceName([in]long column) raises (SQLException); 274*b1cdbd2cSJim Jagielski}; 275*b1cdbd2cSJim Jagielski 276*b1cdbd2cSJim Jagielski//============================================================================= 277*b1cdbd2cSJim Jagielski 278*b1cdbd2cSJim Jagielski}; }; }; }; 279*b1cdbd2cSJim Jagielski 280*b1cdbd2cSJim Jagielski/*=========================================================================== 281*b1cdbd2cSJim Jagielski===========================================================================*/ 282*b1cdbd2cSJim Jagielski#endif 283