xref: /AOO41X/main/offapi/com/sun/star/sdbc/RowSet.idl (revision cdf0e10c4e3984b49a9502b011690b615761d4a3)
1*cdf0e10cSrcweir/*************************************************************************
2*cdf0e10cSrcweir *
3*cdf0e10cSrcweir * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4*cdf0e10cSrcweir *
5*cdf0e10cSrcweir * Copyright 2000, 2010 Oracle and/or its affiliates.
6*cdf0e10cSrcweir *
7*cdf0e10cSrcweir * OpenOffice.org - a multi-platform office productivity suite
8*cdf0e10cSrcweir *
9*cdf0e10cSrcweir * This file is part of OpenOffice.org.
10*cdf0e10cSrcweir *
11*cdf0e10cSrcweir * OpenOffice.org is free software: you can redistribute it and/or modify
12*cdf0e10cSrcweir * it under the terms of the GNU Lesser General Public License version 3
13*cdf0e10cSrcweir * only, as published by the Free Software Foundation.
14*cdf0e10cSrcweir *
15*cdf0e10cSrcweir * OpenOffice.org is distributed in the hope that it will be useful,
16*cdf0e10cSrcweir * but WITHOUT ANY WARRANTY; without even the implied warranty of
17*cdf0e10cSrcweir * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
18*cdf0e10cSrcweir * GNU Lesser General Public License version 3 for more details
19*cdf0e10cSrcweir * (a copy is included in the LICENSE file that accompanied this code).
20*cdf0e10cSrcweir *
21*cdf0e10cSrcweir * You should have received a copy of the GNU Lesser General Public License
22*cdf0e10cSrcweir * version 3 along with OpenOffice.org.  If not, see
23*cdf0e10cSrcweir * <http://www.openoffice.org/license.html>
24*cdf0e10cSrcweir * for a copy of the LGPLv3 License.
25*cdf0e10cSrcweir *
26*cdf0e10cSrcweir ************************************************************************/
27*cdf0e10cSrcweir#ifndef __com_sun_star_sdbc_RowSet_idl__
28*cdf0e10cSrcweir#define __com_sun_star_sdbc_RowSet_idl__
29*cdf0e10cSrcweir
30*cdf0e10cSrcweir#ifndef __com_sun_star_sdbc_ResultSet_idl__
31*cdf0e10cSrcweir#include <com/sun/star/sdbc/ResultSet.idl>
32*cdf0e10cSrcweir#endif
33*cdf0e10cSrcweir#ifndef __com_sun_star_sdbc_XColumnLocate_idl__
34*cdf0e10cSrcweir#include <com/sun/star/sdbc/XColumnLocate.idl>
35*cdf0e10cSrcweir#endif
36*cdf0e10cSrcweir
37*cdf0e10cSrcweir module com {  module sun {  module star {  module container {
38*cdf0e10cSrcweir published interface XNameAccess;
39*cdf0e10cSrcweir};};};};
40*cdf0e10cSrcweir
41*cdf0e10cSrcweir module com {  module sun {  module star {  module sdbc {
42*cdf0e10cSrcweir
43*cdf0e10cSrcweir published interface XRowSet;
44*cdf0e10cSrcweir published interface XParameters;
45*cdf0e10cSrcweir
46*cdf0e10cSrcweir
47*cdf0e10cSrcweir/** is a client side ResultSet, which combines the characteristics of a
48*cdf0e10cSrcweir	<type scope="com::sun::star::sdbc">Statement</type>
49*cdf0e10cSrcweir	and a
50*cdf0e10cSrcweir	<type scope="com::sun::star::sdbc">ResultSet</type>.
51*cdf0e10cSrcweir
52*cdf0e10cSrcweir
53*cdf0e10cSrcweir	<p>
54*cdf0e10cSrcweir	It acts like a typical bean. Before you use the RowSet, you have to specify a
55*cdf0e10cSrcweir	set of properties like a DataSource and a Command and other properties known of
56*cdf0e10cSrcweir	Statement.
57*cdf0e10cSrcweir	<br/>
58*cdf0e10cSrcweir	Afterwards, you can populate the RowSet by its execute method to fill the set
59*cdf0e10cSrcweir	with data.
60*cdf0e10cSrcweir	</p>
61*cdf0e10cSrcweir	<p>
62*cdf0e10cSrcweir	On the one hand, a RowSet can be used as a short cut to retrieve the data of a DataSource.
63*cdf0e10cSrcweir	You don't have to establish a connection, create a Statement, and then create
64*cdf0e10cSrcweir	a ResultSet. On the other hand, a rowset can be used to implement capabilties for
65*cdf0e10cSrcweir	a result set, which are not supported by a driver result set, like caching
66*cdf0e10cSrcweir	strategies or update capabilities.
67*cdf0e10cSrcweir	</p>
68*cdf0e10cSrcweir */
69*cdf0e10cSrcweirpublished service RowSet
70*cdf0e10cSrcweir{
71*cdf0e10cSrcweir	service com::sun::star::sdbc::ResultSet;
72*cdf0e10cSrcweir
73*cdf0e10cSrcweir	/** used to execute and to add/remove listeners.
74*cdf0e10cSrcweir
75*cdf0e10cSrcweir        <p>To refresh the content of a <type>RowSet</type>, use this interface's <member>XRowSet::execute</member>
76*cdf0e10cSrcweir        method.</p>
77*cdf0e10cSrcweir    */
78*cdf0e10cSrcweir	interface XRowSet;
79*cdf0e10cSrcweir
80*cdf0e10cSrcweir	// used to set parameters.
81*cdf0e10cSrcweir	interface XParameters;
82*cdf0e10cSrcweir
83*cdf0e10cSrcweir	/** allows locating columns which's name is known only.
84*cdf0e10cSrcweir	*/
85*cdf0e10cSrcweir	interface XColumnLocate;
86*cdf0e10cSrcweir
87*cdf0e10cSrcweir	/** is the name of a named datasource to use.@see com::sun::star::sdbc:XDataSource
88*cdf0e10cSrcweir	 */
89*cdf0e10cSrcweir	[property] string DataSourceName;
90*cdf0e10cSrcweir
91*cdf0e10cSrcweir
92*cdf0e10cSrcweir	/** is the connection URL. Could be used instead of the DataSourceName.
93*cdf0e10cSrcweir	 */
94*cdf0e10cSrcweir	[property] string URL;
95*cdf0e10cSrcweir
96*cdf0e10cSrcweir
97*cdf0e10cSrcweir	/** is the command which should be executed.
98*cdf0e10cSrcweir	 */
99*cdf0e10cSrcweir	[property] string Command;
100*cdf0e10cSrcweir
101*cdf0e10cSrcweir
102*cdf0e10cSrcweir	/** indicates the transaction isolation level, which should be used for the
103*cdf0e10cSrcweir		connection.@see com::sun::star::sdbc::TransactionIsolation
104*cdf0e10cSrcweir	 */
105*cdf0e10cSrcweir	[property] long TransactionIsolation;
106*cdf0e10cSrcweir
107*cdf0e10cSrcweir
108*cdf0e10cSrcweir	/** is the type map that will be used for the custom mapping of SQL structured types
109*cdf0e10cSrcweir		and distinct types.
110*cdf0e10cSrcweir	 */
111*cdf0e10cSrcweir	[property] com::sun::star::container::XNameAccess TypeMap;
112*cdf0e10cSrcweir
113*cdf0e10cSrcweir
114*cdf0e10cSrcweir	/** returns if escape processing is on or off.
115*cdf0e10cSrcweir		If escape scanning is on (the default), the driver will do
116*cdf0e10cSrcweir		escape substitution before sending the SQL to the database.
117*cdf0e10cSrcweir		This is only evaluated, if the CommandType is COMMAND.
118*cdf0e10cSrcweir	 */
119*cdf0e10cSrcweir	[property] boolean EscapeProcessing;
120*cdf0e10cSrcweir
121*cdf0e10cSrcweir
122*cdf0e10cSrcweir	/** retrieves the number of seconds the driver will wait for a Statement
123*cdf0e10cSrcweir		to execute. If the limit is exceeded, a
124*cdf0e10cSrcweir		<type scope="com::sun::star::sdbc">SQLException</type>
125*cdf0e10cSrcweir		is thrown.
126*cdf0e10cSrcweir		There is no limitation, if set to zero.
127*cdf0e10cSrcweir	 */
128*cdf0e10cSrcweir	[property] long QueryTimeOut;
129*cdf0e10cSrcweir
130*cdf0e10cSrcweir
131*cdf0e10cSrcweir	/** returns the maximum number of bytes allowed for any column value.
132*cdf0e10cSrcweir
133*cdf0e10cSrcweir		<p>
134*cdf0e10cSrcweir		This limit is the maximum number of bytes that can be returned
135*cdf0e10cSrcweir		for any column value. The limit applies only to
136*cdf0e10cSrcweir		<member scope= "com::sun::star::sdbc">DataType::BINARY</member>
137*cdf0e10cSrcweir			  ,
138*cdf0e10cSrcweir			  <member scope= "com::sun::star::sdbc">DataType::VARBINARY</member>
139*cdf0e10cSrcweir			  ,
140*cdf0e10cSrcweir			  <member scope= "com::sun::star::sdbc">DataType::LONGVARBINARY</member>
141*cdf0e10cSrcweir			  ,
142*cdf0e10cSrcweir			  <member scope= "com::sun::star::sdbc">DataType::CHAR</member>
143*cdf0e10cSrcweir			  ,
144*cdf0e10cSrcweir			  <member scope= "com::sun::star::sdbc">DataType::VARCHAR</member>
145*cdf0e10cSrcweir			  ,
146*cdf0e10cSrcweir			  and
147*cdf0e10cSrcweir			  <member scope= "com::sun::star::sdbc">DataType::LONGVARCHAR</member>
148*cdf0e10cSrcweir			  columns.
149*cdf0e10cSrcweir		If the limit is exceeded, the excess data is silently discarded.
150*cdf0e10cSrcweir		<br/>
151*cdf0e10cSrcweir		There is no limitation, if set to zero.
152*cdf0e10cSrcweir		</p>
153*cdf0e10cSrcweir	 */
154*cdf0e10cSrcweir	[property] long MaxFieldSize;
155*cdf0e10cSrcweir
156*cdf0e10cSrcweir
157*cdf0e10cSrcweir	/** retrieves the maximum number of rows that a ResultSet can contain.
158*cdf0e10cSrcweir		If the limit is exceeded, the excess rows are silently dropped.
159*cdf0e10cSrcweir		<br/>
160*cdf0e10cSrcweir		There is no limitation, if set to zero.
161*cdf0e10cSrcweir	 */
162*cdf0e10cSrcweir	[property] long MaxRows;
163*cdf0e10cSrcweir
164*cdf0e10cSrcweir
165*cdf0e10cSrcweir	/** determines the user for whom to open the connection.
166*cdf0e10cSrcweir	 */
167*cdf0e10cSrcweir	[property] string User;
168*cdf0e10cSrcweir
169*cdf0e10cSrcweir
170*cdf0e10cSrcweir	/** determines the user for whom to open the connection.
171*cdf0e10cSrcweir	 */
172*cdf0e10cSrcweir	[property] string Password;
173*cdf0e10cSrcweir
174*cdf0e10cSrcweir
175*cdf0e10cSrcweir	/** determine the result set type.
176*cdf0e10cSrcweir
177*cdf0e10cSrcweir		@see com::sun::star::sdbc::ResultSetType
178*cdf0e10cSrcweir	 */
179*cdf0e10cSrcweir	[property] long ResultSetType;
180*cdf0e10cSrcweir};
181*cdf0e10cSrcweir
182*cdf0e10cSrcweir//=============================================================================
183*cdf0e10cSrcweir
184*cdf0e10cSrcweir}; }; }; };
185*cdf0e10cSrcweir
186*cdf0e10cSrcweir/*===========================================================================
187*cdf0e10cSrcweir===========================================================================*/
188*cdf0e10cSrcweir#endif
189