1 /*************************************************************************
3 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
5 * Copyright 2008 by Sun Microsystems, Inc.
7 * OpenOffice.org - a multi-platform office productivity suite
9 * $RCSfile: XResultSetMetaData.idl,v $
12 * This file is part of OpenOffice.org.
14 * OpenOffice.org is free software: you can redistribute it and/or modify
15 * it under the terms of the GNU Lesser General Public License version 3
16 * only, as published by the Free Software Foundation.
18 * OpenOffice.org is distributed in the hope that it will be useful,
19 * but WITHOUT ANY WARRANTY; without even the implied warranty of
20 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
21 * GNU Lesser General Public License version 3 for more details
22 * (a copy is included in the LICENSE file that accompanied this code).
24 * You should have received a copy of the GNU Lesser General Public License
25 * version 3 along with OpenOffice.org. If not, see
26 * <http://www.openoffice.org/license.html>
27 * for a copy of the LGPLv3 License.
29 ************************************************************************/
30 #ifndef __com_sun_star_sdbc_XResultSetMetaData_idl__
31 #define __com_sun_star_sdbc_XResultSetMetaData_idl__
33 #ifndef __com_sun_star_uno_XInterface_idl__
34 #include
<com
/sun
/star
/uno
/XInterface.idl
>
37 #ifndef __com_sun_star_sdbc_SQLException_idl__
38 #include
<com
/sun
/star
/sdbc
/SQLException.idl
>
41 module com
{ module sun
{ module star
{ module sdbc
{
44 /** can be used to find out about the types and properties
45 of the columns in a ResultSet.
47 published
interface XResultSetMetaData
: com
::sun
::star
::uno
::XInterface
50 /** returns the number of columns in this ResultSet.
54 if a database access error occurs.
56 long getColumnCount
() raises
(SQLException
);
57 //-------------------------------------------------------------------------
59 /** indicates whether the column is automatically numbered, thus read-only.
61 the first column is 1, the second is 2,
65 if a database access error occurs.
67 boolean isAutoIncrement
([in]long column
) raises
(SQLException
);
68 //-------------------------------------------------------------------------
70 /** indicates whether a column's case matters.
72 the first column is 1, the second is 2,
76 if a database access error occurs.
78 boolean isCaseSensitive
([in]long column
) raises
(SQLException
);
79 //-------------------------------------------------------------------------
81 /** indicates whether the column can be used in a where clause.
83 the first column is 1, the second is 2,
87 if a database access error occurs.
89 boolean isSearchable
([in]long column
) raises
(SQLException
);
90 //-------------------------------------------------------------------------
92 /** indicates whether the column is a cash value.
94 the first column is 1, the second is 2,
98 if a database access error occurs.
100 boolean isCurrency
([in]long column
) raises
(SQLException
);
101 //-------------------------------------------------------------------------
103 /** indicates the nullability of values in the designated column.@see com::sun::star::sdbc::ColumnValue
105 the first column is 1, the second is 2,
109 if a database access error occurs.
111 long isNullable
([in]long column
) raises
(SQLException
);
112 //-------------------------------------------------------------------------
114 /** indicates whether values in the column are signed numbers.
116 the first column is 1, the second is 2,
120 if a database access error occurs.
122 boolean isSigned
([in]long column
) raises
(SQLException
);
123 //-------------------------------------------------------------------------
125 /** indicates the column's normal max width in chars.
127 the first column is 1, the second is 2,
129 the normal maximum number of characters allowed as the width of the designated column
131 if a database access error occurs.
133 long getColumnDisplaySize
([in]long column
) raises
(SQLException
);
134 //-------------------------------------------------------------------------
136 /** gets the suggested column title for use in printouts and
139 the first column is 1, the second is 2,
141 the suggested column title
143 if a database access error occurs.
145 string getColumnLabel
([in]long column
) raises
(SQLException
);
146 //-------------------------------------------------------------------------
148 /** gets a column's name.
150 the first column is 1, the second is 2,
154 if a database access error occurs.
156 string getColumnName
([in]long column
) raises
(SQLException
);
157 //-------------------------------------------------------------------------
159 /** gets a column's table's schema.
161 the first column is 1, the second is 2,
165 if a database access error occurs.
167 string getSchemaName
([in]long column
) raises
(SQLException
);
168 //-------------------------------------------------------------------------
170 /** gets a column's number of decimal digits.
172 the first column is 1, the second is 2,
176 if a database access error occurs.
178 long getPrecision
([in]long column
) raises
(SQLException
);
179 //-------------------------------------------------------------------------
181 /** gets a column's number of digits to right of the decimal point.
183 the first column is 1, the second is 2,
187 if a database access error occurs.
189 long getScale
([in]long column
) raises
(SQLException
);
190 //-------------------------------------------------------------------------
192 /** gets a column's table name.
194 the first column is 1, the second is 2,
198 if a database access error occurs.
200 string getTableName
([in]long column
) raises
(SQLException
);
201 //-------------------------------------------------------------------------
203 /** gets a column's table's catalog name.
205 the first column is 1, the second is 2,
209 if a database access error occurs.
211 string getCatalogName
([in]long column
) raises
(SQLException
);
212 //-------------------------------------------------------------------------
214 /** retrieves a column's SQL type.
216 the first column is 1, the second is 2,
220 if a database access error occurs.
222 long getColumnType
([in]long column
) raises
(SQLException
);
223 //-------------------------------------------------------------------------
225 /** retrieves a column's database-specific type name.
227 the first column is 1, the second is 2,
231 if a database access error occurs.
233 string getColumnTypeName
([in]long column
) raises
(SQLException
);
234 //-------------------------------------------------------------------------
236 /** indicates whether a column is definitely not writable.
238 the first column is 1, the second is 2,
242 if a database access error occurs.
244 boolean isReadOnly
([in]long column
) raises
(SQLException
);
245 //-------------------------------------------------------------------------
247 /** indicates whether it is possible for a write on the column to succeed.
249 the first column is 1, the second is 2,
253 if a database access error occurs.
255 boolean isWritable
([in]long column
) raises
(SQLException
);
256 //-------------------------------------------------------------------------
258 /** indicates whether a write on the column will definitely succeed.
260 the first column is 1, the second is 2,
264 if a database access error occurs.
266 boolean isDefinitelyWritable
([in]long column
) raises
(SQLException
);
267 //-------------------------------------------------------------------------
269 /** returns the fully-qualified name of the service whose instances
270 are manufactured if the method
271 <member scope="com::sun::star::sdbc">XResultSet::.getObject()</member>
272 is called to retrieve a value from the column.
274 the first column is 1, the second is 2,
278 if a database access error occurs.
280 string getColumnServiceName
([in]long column
) raises
(SQLException
);
283 //=============================================================================
287 /*===========================================================================
288 ===========================================================================*/