Version 5.2.6.1, tag libreoffice-5.2.6.1
[LibreOffice.git] / offapi / com / sun / star / sdbc / RowSet.idl
blobf8b9183688e97ea3039b2012ac94b4e60915b198
1 /* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
2 /*
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_RowSet_idl__
20 #define __com_sun_star_sdbc_RowSet_idl__
22 #include <com/sun/star/sdbc/ResultSet.idl>
23 #include <com/sun/star/sdbc/XColumnLocate.idl>
25 module com { module sun { module star { module container {
26 published interface XNameAccess;
27 };};};};
29 module com { module sun { module star { module sdbc {
31 published interface XRowSet;
32 published interface XParameters;
35 /** is a client side ResultSet, which combines the characteristics of a
36 com::sun::star::sdbc::Statement
37 and a
38 com::sun::star::sdbc::ResultSet.
41 <p>
42 It acts like a typical bean. Before you use the RowSet, you have to specify a
43 set of properties like a DataSource and a Command and other properties known of
44 Statement.
45 <br/>
46 Afterwards, you can populate the RowSet by its execute method to fill the set
47 with data.
48 </p>
49 <p>
50 On the one hand, a RowSet can be used as a short cut to retrieve the data of a DataSource.
51 You don't have to establish a connection, create a Statement, and then create
52 a ResultSet. On the other hand, a row set can be used to implement capabilities for
53 a result set, which are not supported by a driver result set, like caching
54 strategies or update capabilities.
55 </p>
57 published service RowSet
59 service com::sun::star::sdbc::ResultSet;
61 /** used to execute and to add/remove listeners.
63 <p>To refresh the content of a RowSet, use this interface's XRowSet::execute()
64 method.</p>
66 interface XRowSet;
68 // used to set parameters.
69 interface XParameters;
71 /** allows locating columns whose name is known only.
73 interface XColumnLocate;
75 /** is the name of a named datasource to use.@see com::sun::star::sdbc:XDataSource
77 [property] string DataSourceName;
80 /** is the connection URL. Could be used instead of the DataSourceName.
82 [property] string URL;
85 /** is the command which should be executed.
87 [property] string Command;
90 /** indicates the transaction isolation level, which should be used for the
91 connection.@see com::sun::star::sdbc::TransactionIsolation
93 [property] long TransactionIsolation;
96 /** is the type map that will be used for the custom mapping of SQL structured types
97 and distinct types.
99 [property] com::sun::star::container::XNameAccess TypeMap;
102 /** returns if escape processing is on or off.
103 If escape scanning is on (the default), the driver will do
104 escape substitution before sending the SQL to the database.
105 This is only evaluated, if the CommandType is COMMAND.
107 [property] boolean EscapeProcessing;
110 /** retrieves the number of seconds the driver will wait for a Statement
111 to execute. If the limit is exceeded, a
112 com::sun::star::sdbc::SQLException
113 is thrown.
114 There is no limitation, if set to zero.
116 [property] long QueryTimeOut;
119 /** returns the maximum number of bytes allowed for any column value.
122 This limit is the maximum number of bytes that can be returned
123 for any column value. The limit applies only to
124 com::sun::star::sdbc::DataType::BINARY
126 com::sun::star::sdbc::DataType::VARBINARY
128 com::sun::star::sdbc::DataType::LONGVARBINARY
130 com::sun::star::sdbc::DataType::CHAR
132 com::sun::star::sdbc::DataType::VARCHAR
135 com::sun::star::sdbc::DataType::LONGVARCHAR
136 columns.
137 If the limit is exceeded, the excess data is silently discarded.
138 <br/>
139 There is no limitation, if set to zero.
140 </p>
142 [property] long MaxFieldSize;
145 /** retrieves the maximum number of rows that a ResultSet can contain.
146 If the limit is exceeded, the excess rows are silently dropped.
147 <br/>
148 There is no limitation, if set to zero.
150 [property] long MaxRows;
153 /** determines the user for whom to open the connection.
155 [property] string User;
158 /** determines the user for whom to open the connection.
160 [property] string Password;
163 /** determine the result set type.
165 @see com::sun::star::sdbc::ResultSetType
167 [property] long ResultSetType;
171 }; }; }; };
173 /*===========================================================================
174 ===========================================================================*/
175 #endif
177 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */