1 /*************************************************************************
3 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
5 * Copyright 2000, 2010 Oracle and/or its affiliates.
7 * OpenOffice.org - a multi-platform office productivity suite
9 * This file is part of OpenOffice.org.
11 * OpenOffice.org is free software: you can redistribute it and/or modify
12 * it under the terms of the GNU Lesser General Public License version 3
13 * only, as published by the Free Software Foundation.
15 * OpenOffice.org is distributed in the hope that it will be useful,
16 * but WITHOUT ANY WARRANTY; without even the implied warranty of
17 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
18 * GNU Lesser General Public License version 3 for more details
19 * (a copy is included in the LICENSE file that accompanied this code).
21 * You should have received a copy of the GNU Lesser General Public License
22 * version 3 along with OpenOffice.org. If not, see
23 * <http://www.openoffice.org/license.html>
24 * for a copy of the LGPLv3 License.
26 ************************************************************************/
27 #ifndef __com_sun_star_sdbc_XResultSetMetaData_idl__
28 #define __com_sun_star_sdbc_XResultSetMetaData_idl__
30 #ifndef __com_sun_star_uno_XInterface_idl__
31 #include
<com
/sun
/star
/uno
/XInterface.idl
>
34 #ifndef __com_sun_star_sdbc_SQLException_idl__
35 #include
<com
/sun
/star
/sdbc
/SQLException.idl
>
38 module com
{ module sun
{ module star
{ module sdbc
{
41 /** can be used to find out about the types and properties
42 of the columns in a ResultSet.
44 published
interface XResultSetMetaData
: com
::sun
::star
::uno
::XInterface
47 /** returns the number of columns in this ResultSet.
51 if a database access error occurs.
53 long getColumnCount
() raises
(SQLException
);
54 //-------------------------------------------------------------------------
56 /** indicates whether the column is automatically numbered, thus read-only.
58 the first column is 1, the second is 2,
62 if a database access error occurs.
64 boolean isAutoIncrement
([in]long column
) raises
(SQLException
);
65 //-------------------------------------------------------------------------
67 /** indicates whether a column's case matters.
69 the first column is 1, the second is 2,
73 if a database access error occurs.
75 boolean isCaseSensitive
([in]long column
) raises
(SQLException
);
76 //-------------------------------------------------------------------------
78 /** indicates whether the column can be used in a where clause.
80 the first column is 1, the second is 2,
84 if a database access error occurs.
86 boolean isSearchable
([in]long column
) raises
(SQLException
);
87 //-------------------------------------------------------------------------
89 /** indicates whether the column is a cash value.
91 the first column is 1, the second is 2,
95 if a database access error occurs.
97 boolean isCurrency
([in]long column
) raises
(SQLException
);
98 //-------------------------------------------------------------------------
100 /** indicates the nullability of values in the designated column.@see com::sun::star::sdbc::ColumnValue
102 the first column is 1, the second is 2,
106 if a database access error occurs.
108 long isNullable
([in]long column
) raises
(SQLException
);
109 //-------------------------------------------------------------------------
111 /** indicates whether values in the column are signed numbers.
113 the first column is 1, the second is 2,
117 if a database access error occurs.
119 boolean isSigned
([in]long column
) raises
(SQLException
);
120 //-------------------------------------------------------------------------
122 /** indicates the column's normal max width in chars.
124 the first column is 1, the second is 2,
126 the normal maximum number of characters allowed as the width of the designated column
128 if a database access error occurs.
130 long getColumnDisplaySize
([in]long column
) raises
(SQLException
);
131 //-------------------------------------------------------------------------
133 /** gets the suggested column title for use in printouts and
136 the first column is 1, the second is 2,
138 the suggested column title
140 if a database access error occurs.
142 string getColumnLabel
([in]long column
) raises
(SQLException
);
143 //-------------------------------------------------------------------------
145 /** gets a column's name.
147 the first column is 1, the second is 2,
151 if a database access error occurs.
153 string getColumnName
([in]long column
) raises
(SQLException
);
154 //-------------------------------------------------------------------------
156 /** gets a column's table's schema.
158 the first column is 1, the second is 2,
162 if a database access error occurs.
164 string getSchemaName
([in]long column
) raises
(SQLException
);
165 //-------------------------------------------------------------------------
167 /** gets a column's number of decimal digits.
169 the first column is 1, the second is 2,
173 if a database access error occurs.
175 long getPrecision
([in]long column
) raises
(SQLException
);
176 //-------------------------------------------------------------------------
178 /** gets a column's number of digits to right of the decimal point.
180 the first column is 1, the second is 2,
184 if a database access error occurs.
186 long getScale
([in]long column
) raises
(SQLException
);
187 //-------------------------------------------------------------------------
189 /** gets a column's table name.
191 the first column is 1, the second is 2,
195 if a database access error occurs.
197 string getTableName
([in]long column
) raises
(SQLException
);
198 //-------------------------------------------------------------------------
200 /** gets a column's table's catalog name.
202 the first column is 1, the second is 2,
206 if a database access error occurs.
208 string getCatalogName
([in]long column
) raises
(SQLException
);
209 //-------------------------------------------------------------------------
211 /** retrieves a column's SQL type.
213 the first column is 1, the second is 2,
217 if a database access error occurs.
219 long getColumnType
([in]long column
) raises
(SQLException
);
220 //-------------------------------------------------------------------------
222 /** retrieves a column's database-specific type name.
224 the first column is 1, the second is 2,
228 if a database access error occurs.
230 string getColumnTypeName
([in]long column
) raises
(SQLException
);
231 //-------------------------------------------------------------------------
233 /** indicates whether a column is definitely not writable.
235 the first column is 1, the second is 2,
239 if a database access error occurs.
241 boolean isReadOnly
([in]long column
) raises
(SQLException
);
242 //-------------------------------------------------------------------------
244 /** indicates whether it is possible for a write on the column to succeed.
246 the first column is 1, the second is 2,
250 if a database access error occurs.
252 boolean isWritable
([in]long column
) raises
(SQLException
);
253 //-------------------------------------------------------------------------
255 /** indicates whether a write on the column will definitely succeed.
257 the first column is 1, the second is 2,
261 if a database access error occurs.
263 boolean isDefinitelyWritable
([in]long column
) raises
(SQLException
);
264 //-------------------------------------------------------------------------
266 /** returns the fully-qualified name of the service whose instances
267 are manufactured if the method
268 <member scope="com::sun::star::sdbc">XResultSet::.getObject()</member>
269 is called to retrieve a value from the column.
271 the first column is 1, the second is 2,
275 if a database access error occurs.
277 string getColumnServiceName
([in]long column
) raises
(SQLException
);
280 //=============================================================================
284 /*===========================================================================
285 ===========================================================================*/