1 /* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
2 /*************************************************************************
4 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
6 * Copyright 2000, 2010 Oracle and/or its affiliates.
8 * OpenOffice.org - a multi-platform office productivity suite
10 * This file is part of OpenOffice.org.
12 * OpenOffice.org is free software: you can redistribute it and/or modify
13 * it under the terms of the GNU Lesser General Public License version 3
14 * only, as published by the Free Software Foundation.
16 * OpenOffice.org is distributed in the hope that it will be useful,
17 * but WITHOUT ANY WARRANTY; without even the implied warranty of
18 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
19 * GNU Lesser General Public License version 3 for more details
20 * (a copy is included in the LICENSE file that accompanied this code).
22 * You should have received a copy of the GNU Lesser General Public License
23 * version 3 along with OpenOffice.org. If not, see
24 * <http://www.openoffice.org/license.html>
25 * for a copy of the LGPLv3 License.
27 ************************************************************************/
28 #ifndef __com_sun_star_sdbc_XResultSetMetaData_idl__
29 #define __com_sun_star_sdbc_XResultSetMetaData_idl__
31 #include
<com
/sun
/star
/uno
/XInterface.idl
>
33 #include
<com
/sun
/star
/sdbc
/SQLException.idl
>
35 module com
{ module sun
{ module star
{ module sdbc
{
38 /** can be used to find out about the types and properties
39 of the columns in a ResultSet.
41 published
interface XResultSetMetaData
: com
::sun
::star
::uno
::XInterface
44 /** returns the number of columns in this ResultSet.
48 if a database access error occurs.
50 long getColumnCount
() raises
(SQLException
);
51 //-------------------------------------------------------------------------
53 /** indicates whether the column is automatically numbered, thus read-only.
55 the first column is 1, the second is 2,
59 if a database access error occurs.
61 boolean isAutoIncrement
([in]long column
) raises
(SQLException
);
62 //-------------------------------------------------------------------------
64 /** indicates whether a column's case matters.
66 the first column is 1, the second is 2,
70 if a database access error occurs.
72 boolean isCaseSensitive
([in]long column
) raises
(SQLException
);
73 //-------------------------------------------------------------------------
75 /** indicates whether the column can be used in a where clause.
77 the first column is 1, the second is 2,
81 if a database access error occurs.
83 boolean isSearchable
([in]long column
) raises
(SQLException
);
84 //-------------------------------------------------------------------------
86 /** indicates whether the column is a cash value.
88 the first column is 1, the second is 2,
92 if a database access error occurs.
94 boolean isCurrency
([in]long column
) raises
(SQLException
);
95 //-------------------------------------------------------------------------
97 /** indicates the nullability of values in the designated column.@see com::sun::star::sdbc::ColumnValue
99 the first column is 1, the second is 2,
103 if a database access error occurs.
105 long isNullable
([in]long column
) raises
(SQLException
);
106 //-------------------------------------------------------------------------
108 /** indicates whether values in the column are signed numbers.
110 the first column is 1, the second is 2,
114 if a database access error occurs.
116 boolean isSigned
([in]long column
) raises
(SQLException
);
117 //-------------------------------------------------------------------------
119 /** indicates the column's normal max width in chars.
121 the first column is 1, the second is 2,
123 the normal maximum number of characters allowed as the width of the designated column
125 if a database access error occurs.
127 long getColumnDisplaySize
([in]long column
) raises
(SQLException
);
128 //-------------------------------------------------------------------------
130 /** gets the suggested column title for use in printouts and
133 the first column is 1, the second is 2,
135 the suggested column title
137 if a database access error occurs.
139 string getColumnLabel
([in]long column
) raises
(SQLException
);
140 //-------------------------------------------------------------------------
142 /** gets a column's name.
144 the first column is 1, the second is 2,
148 if a database access error occurs.
150 string getColumnName
([in]long column
) raises
(SQLException
);
151 //-------------------------------------------------------------------------
153 /** gets a column's table's schema.
155 the first column is 1, the second is 2,
159 if a database access error occurs.
161 string getSchemaName
([in]long column
) raises
(SQLException
);
162 //-------------------------------------------------------------------------
164 /** gets a column's number of decimal digits.
166 the first column is 1, the second is 2,
170 if a database access error occurs.
172 long getPrecision
([in]long column
) raises
(SQLException
);
173 //-------------------------------------------------------------------------
175 /** gets a column's number of digits to right of the decimal point.
177 the first column is 1, the second is 2,
181 if a database access error occurs.
183 long getScale
([in]long column
) raises
(SQLException
);
184 //-------------------------------------------------------------------------
186 /** gets a column's table name.
188 the first column is 1, the second is 2,
192 if a database access error occurs.
194 string getTableName
([in]long column
) raises
(SQLException
);
195 //-------------------------------------------------------------------------
197 /** gets a column's table's catalog name.
199 the first column is 1, the second is 2,
203 if a database access error occurs.
205 string getCatalogName
([in]long column
) raises
(SQLException
);
206 //-------------------------------------------------------------------------
208 /** retrieves a column's SQL type.
210 the first column is 1, the second is 2,
214 if a database access error occurs.
216 long getColumnType
([in]long column
) raises
(SQLException
);
217 //-------------------------------------------------------------------------
219 /** retrieves a column's database-specific type name.
221 the first column is 1, the second is 2,
225 if a database access error occurs.
227 string getColumnTypeName
([in]long column
) raises
(SQLException
);
228 //-------------------------------------------------------------------------
230 /** indicates whether a column is definitely not writable.
232 the first column is 1, the second is 2,
236 if a database access error occurs.
238 boolean isReadOnly
([in]long column
) raises
(SQLException
);
239 //-------------------------------------------------------------------------
241 /** indicates whether it is possible for a write on the column to succeed.
243 the first column is 1, the second is 2,
247 if a database access error occurs.
249 boolean isWritable
([in]long column
) raises
(SQLException
);
250 //-------------------------------------------------------------------------
252 /** indicates whether a write on the column will definitely succeed.
254 the first column is 1, the second is 2,
258 if a database access error occurs.
260 boolean isDefinitelyWritable
([in]long column
) raises
(SQLException
);
261 //-------------------------------------------------------------------------
263 /** returns the fully-qualified name of the service whose instances
264 are manufactured if the method
265 <member scope="com::sun::star::sdbc">XResultSet::.getObject()</member>
266 is called to retrieve a value from the column.
268 the first column is 1, the second is 2,
272 if a database access error occurs.
274 string getColumnServiceName
([in]long column
) raises
(SQLException
);
277 //=============================================================================
281 /*===========================================================================
282 ===========================================================================*/
285 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */