LibreOffice
LibreOffice 7.4 SDK API Reference
Public Types | Public Attributes | List of all members
DataAccessDescriptor Service Referencepublished

descriptor for accessing basic data access objects. More...

import"DataAccessDescriptor.idl";

Inheritance diagram for DataAccessDescriptor:
MailMerge

Public Types

typedef sequence< ::com::sun::star::beans::PropertyValueConnectionInfo
 specifies additional info to use when creating a connection from a ConnectionResource More...
 
typedef sequence< any > Selection
 specifies a selection to confine the records in a result set. More...
 

Public Attributes

string DataSourceName
 specifies the name of the datasource to access. More...
 
string DatabaseLocation
 specifies the URL of the database file. More...
 
string ConnectionResource
 specifies the database URL which locates a database driver. More...
 
com::sun::star::sdbc::XConnection ActiveConnection
 is a connection to use. More...
 
string Command
 specifies the command to execute to retrieve a result set. More...
 
long CommandType
 specifies the type of the command to be executed to retrieve a result set. More...
 
string Filter
 specifies an additional filter to optionally use. More...
 
string Order
 specifies an additional ORDER BY clause which should be applied on top of the given Command. More...
 
string HavingClause
 specifies an additional HAVING clause which should be applied on top of the given Command. More...
 
string GroupBy
 specifies an additional GROUP BY clause which should be applied on top of the given Command. More...
 
boolean EscapeProcessing
 specifies if the Command should be analyzed on the client side before sending it to the database server. More...
 
com::sun::star::sdbc::XResultSet ResultSet
 specifies an already existent result set to use. More...
 
boolean BookmarkSelection
 specifies how to interpret Selection More...
 
string ColumnName
 specifies a column name. More...
 
com::sun::star::beans::XPropertySet Column
 specifies a column object More...
 

Detailed Description

descriptor for accessing basic data access objects.

Various components interacting with the database access world require to specify (or provide themselves) an object such as a query, a table, a result set, a connection to a data source, a column within a table, and so on.
All of these objects are usually not specified with a single property, but with a set of properties, and for various objects, various (but not always different) properties are needed.
The DataAccessDescriptor describes the super set of the properties for the most common data access objects.

Every component providing or requiring a DataAccessDescriptor for some functionality is urged to specify which properties are mandatory, and which ones optional. Additionally, it's free to specify any additional requirements about the relations of properties.

Since
OOo 1.1.2

Member Typedef Documentation

◆ ConnectionInfo

sequence< ::com::sun::star::beans::PropertyValue > ConnectionInfo
optionalproperty

specifies additional info to use when creating a connection from a ConnectionResource

This member is evaluated only when ConnectionResource is used: In this case, com::sun::star::sdbc::XDriverManager::getConnectionWithInfo() is used to create a connection for the given connection resource, instead of com::sun::star::sdbc::XDriverManager::getConnection().

If the sequence is empty, it is ignored.

◆ Selection

sequence< any > Selection
optionalproperty

specifies a selection to confine the records in a result set.

When you specify a result set either implicitly (DataSourceName, Command, CommandType) or explicitly (ResultSet), the set of results can be additionally refined with this property.

The single elements of the Selection are either record numbers (see com::sun::star::sdbc::XResultSet::getRow()), or bookmarks (see com::sun::star::sdbcx::XRowLocate::getBookmark()).
It is up to the component which provides or requires a DataAccessDescriptor to specify which of the two alternatives it expects. If it does not specify this, then the property BookmarkSelection becomes mandatory.

If the elements specify bookmarks, and a ResultSet has been specified, then this result set is required to support the com::sun::star::sdbcx::XRowLocate interface.

Member Data Documentation

◆ ActiveConnection

com::sun::star::sdbc::XConnection ActiveConnection
optionalproperty

is a connection to use.

This object is guaranteed to be a com::sun::star::sdbc::Connection, but usually it will be a Connection from the module com::sun::star::sdb.
Especially in the case where no DataSourceName is given, but CommandType is CommandType::QUERY, the ActiveConnection needs to fully support the Connection service, to actually retrieve the query specified by Command

If no ActiveConnection is given, then a DataSourceName is required.

See also
DataSourceName

◆ BookmarkSelection

boolean BookmarkSelection
optionalproperty

specifies how to interpret Selection

If present, BookmarkSelection specifies the semantics of Selection. If not present, it's up to the implementing component to specify this semantics.

If TRUE, then the single elements of the array specified by Selection are bookmarks relative to the result set, if FALSE, they're record numbers.

See also
com::sun::star::sdbcx::XRowLocate
com::sun::star::sdbc::XResultSet
com::sun::star::sdb::XResultSetAccess

◆ Column

specifies a column object

For reasons of performance and saving resources, a supplier of an DataAccessDescriptor which is used to describe a column object can pass this object directly, instead of specifying it only implicitly with the ColumnName property.

The object will at least support the com::sun::star::sdbcx::Column service, but more often it will even be a Column from the com::sun::star::sdb module.

◆ ColumnName

string ColumnName
optionalproperty

specifies a column name.

This property is usually used together with the Command and CommandType properties.

See also
Column

◆ Command

string Command
optionalproperty

specifies the command to execute to retrieve a result set.

This property is only meaningful together with the CommandType property, thus either both or none of them are present.

See also
CommandType

◆ CommandType

long CommandType
optionalproperty

specifies the type of the command to be executed to retrieve a result set.

Command needs to be interpreted depending on the value of this property.

This property is only meaningful together with the Command property, thus either both or none of them are present.

See also
com::sun::star::sdb::CommandType

◆ ConnectionResource

string ConnectionResource
optionalproperty

specifies the database URL which locates a database driver.

This database URL is usually used to create a Connection. If no ConnectionResource is given, then an ActiveConnection is required.

See also
com::sun::star::sdb::DatabaseContext
ActiveConnection

◆ DatabaseLocation

string DatabaseLocation
optionalproperty

specifies the URL of the database file.

This database location is usually used to create a Connection. If no DatabaseLocation is given and the ConnectionResource is empty, then an ActiveConnection is required.

See also
com::sun::star::sdb::DatabaseContext
ActiveConnection

◆ DataSourceName

string DataSourceName
optionalproperty

specifies the name of the datasource to access.

This data source is usually used to create a Connection. If no DataSourceName is given and the DatabaseLocation and the ConnectionResource are empty, then an ActiveConnection is required.

See also
com::sun::star::sdb::DatabaseContext
ActiveConnection

◆ EscapeProcessing

boolean EscapeProcessing
optionalproperty

specifies if the Command should be analyzed on the client side before sending it to the database server.

The default value of this property is TRUE. By switching it to FALSE, you can pass backend-specific SQL statements, which are not standard SQL, to your database.

This property is usually present together with the Command and CommandType properties, and is evaluated if and only if CommandType equals CommandType::COMMAND.

◆ Filter

string Filter
optionalproperty

specifies an additional filter to optionally use.

The Filter string has to form a WHERE-clause, without the WHERE-string itself.

If a DataSourceName, Command and CommandType are specified, a RowSet can be created with this information. If the results provided by the row set are to be additionally filtered, the Filter property can be used.

Note that the Filter property does not make sense if a ResultSet has been specified in the DataAccessDescriptor.

See also
com::sun::star::sdb::RowSet
ResultSet

◆ GroupBy

string GroupBy
optionalproperty

specifies an additional GROUP BY clause which should be applied on top of the given Command.

The keyword GROUP BY itself is not part of this property.

◆ HavingClause

string HavingClause
optionalproperty

specifies an additional HAVING clause which should be applied on top of the given Command.

The keyword HAVING itself is not part of this property.

◆ Order

string Order
optionalproperty

specifies an additional ORDER BY clause which should be applied on top of the given Command.

The keyword ORDER BY itself is not part of this property.

◆ ResultSet

specifies an already existent result set to use.

Usually, you use the properties DataSourceName (alternatively ActiveConnection), Command and CommandType to specify how to obtain a result set. However, in scenarios where the provider of a DataAccessDescriptor has access to an already existent result set, it can pass it along for reusage. This is encouraged to increase performance.

The object will at least support the com::sun::star::sdbc::ResultSet service.

Note that any superservices of com::sun::star::sdbc::ResultSet are also allowed. Especially, this member can denote an instance of the com::sun::star::sdb::RowSet, or an instance obtained by calling com::sun::star::sdb::XResultSetAccess::createResultSet() on such a com::sun::star::sdb::RowSet. This becomes important in conjunction with the Selection property.

See also
com::sun::star::sdb::XResultSetAccess

The documentation for this service was generated from the following file: