1 /* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
3 * This file is part of the LibreOffice project.
5 * This Source Code Form is subject to the terms of the Mozilla Public
6 * License, v. 2.0. If a copy of the MPL was not distributed with this
7 * file, You can obtain one at http://mozilla.org/MPL/2.0/.
9 * This file incorporates work covered by the following license notice:
11 * Licensed to the Apache Software Foundation (ASF) under one or more
12 * contributor license agreements. See the NOTICE file distributed
13 * with this work for additional information regarding copyright
14 * ownership. The ASF licenses this file to you under the Apache
15 * License, Version 2.0 (the "License"); you may not use this file
16 * except in compliance with the License. You may obtain a copy of
17 * the License at http://www.apache.org/licenses/LICENSE-2.0 .
19 #ifndef __com_sun_star_sdbc_XResultSetMetaData_idl__
20 #define __com_sun_star_sdbc_XResultSetMetaData_idl__
22 #include
<com
/sun
/star
/uno
/XInterface.idl
>
24 #include
<com
/sun
/star
/sdbc
/SQLException.idl
>
26 module com
{ module sun
{ module star
{ module sdbc
{
29 /** can be used to find out about the types and properties
30 of the columns in a ResultSet.
32 published
interface XResultSetMetaData
: com
::sun
::star
::uno
::XInterface
35 /** returns the number of columns in this ResultSet.
39 if a database access error occurs.
41 long getColumnCount
() raises
(SQLException
);
43 /** indicates whether the column is automatically numbered, thus read-only.
45 the first column is 1, the second is 2,
49 if a database access error occurs.
51 boolean isAutoIncrement
([in]long column
) raises
(SQLException
);
53 /** indicates whether a column's case matters.
55 the first column is 1, the second is 2,
59 if a database access error occurs.
61 boolean isCaseSensitive
([in]long column
) raises
(SQLException
);
63 /** indicates whether the column can be used in a where clause.
65 the first column is 1, the second is 2,
69 if a database access error occurs.
71 boolean isSearchable
([in]long column
) raises
(SQLException
);
73 /** indicates whether the column is a cash value.
75 the first column is 1, the second is 2,
79 if a database access error occurs.
81 boolean isCurrency
([in]long column
) raises
(SQLException
);
83 /** indicates the nullability of values in the designated column.@see com::sun::star::sdbc::ColumnValue
85 the first column is 1, the second is 2,
89 if a database access error occurs.
91 long isNullable
([in]long column
) raises
(SQLException
);
93 /** indicates whether values in the column are signed numbers.
95 the first column is 1, the second is 2,
99 if a database access error occurs.
101 boolean isSigned
([in]long column
) raises
(SQLException
);
103 /** indicates the column's normal max width in chars.
105 the first column is 1, the second is 2,
107 the normal maximum number of characters allowed as the width of the designated column
109 if a database access error occurs.
111 long getColumnDisplaySize
([in]long column
) raises
(SQLException
);
113 /** gets the suggested column title for use in printouts and
116 the first column is 1, the second is 2,
118 the suggested column title
120 if a database access error occurs.
122 string getColumnLabel
([in]long column
) raises
(SQLException
);
124 /** gets a column's name.
126 the first column is 1, the second is 2,
130 if a database access error occurs.
132 string getColumnName
([in]long column
) raises
(SQLException
);
134 /** gets a column's table's schema.
136 the first column is 1, the second is 2,
140 if a database access error occurs.
142 string getSchemaName
([in]long column
) raises
(SQLException
);
144 /** gets a column's number of decimal digits.
146 the first column is 1, the second is 2,
150 if a database access error occurs.
152 long getPrecision
([in]long column
) raises
(SQLException
);
154 /** gets a column's number of digits to right of the decimal point.
156 the first column is 1, the second is 2,
160 if a database access error occurs.
162 long getScale
([in]long column
) raises
(SQLException
);
164 /** gets a column's table name.
166 the first column is 1, the second is 2,
170 if a database access error occurs.
172 string getTableName
([in]long column
) raises
(SQLException
);
174 /** gets a column's table's catalog name.
176 the first column is 1, the second is 2,
180 if a database access error occurs.
182 string getCatalogName
([in]long column
) raises
(SQLException
);
184 /** retrieves a column's SQL type.
186 the first column is 1, the second is 2,
190 if a database access error occurs.
192 long getColumnType
([in]long column
) raises
(SQLException
);
194 /** retrieves a column's database-specific type name.
196 the first column is 1, the second is 2,
200 if a database access error occurs.
202 string getColumnTypeName
([in]long column
) raises
(SQLException
);
204 /** indicates whether a column is definitely not writable.
206 the first column is 1, the second is 2,
210 if a database access error occurs.
212 boolean isReadOnly
([in]long column
) raises
(SQLException
);
214 /** indicates whether it is possible for a write on the column to succeed.
216 the first column is 1, the second is 2,
220 if a database access error occurs.
222 boolean isWritable
([in]long column
) raises
(SQLException
);
224 /** indicates whether a write on the column will definitely succeed.
226 the first column is 1, the second is 2,
230 if a database access error occurs.
232 boolean isDefinitelyWritable
([in]long column
) raises
(SQLException
);
234 /** returns the fully-qualified name of the service whose instances
235 are manufactured if the method
236 com::sun::star::sdbc::XResultSet::.getObject()
237 is called to retrieve a value from the column.
239 the first column is 1, the second is 2,
243 if a database access error occurs.
245 string getColumnServiceName
([in]long column
) raises
(SQLException
);
251 /*===========================================================================
252 ===========================================================================*/
255 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */