/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ /* * This file is part of the LibreOffice project. * * This Source Code Form is subject to the terms of the Mozilla Public * License, v. 2.0. If a copy of the MPL was not distributed with this * file, You can obtain one at http://mozilla.org/MPL/2.0/. * * This file incorporates work covered by the following license notice: * * Licensed to the Apache Software Foundation (ASF) under one or more * contributor license agreements. See the NOTICE file distributed * with this work for additional information regarding copyright * ownership. The ASF licenses this file to you under the Apache * License, Version 2.0 (the "License"); you may not use this file * except in compliance with the License. You may obtain a copy of * the License at http://www.apache.org/licenses/LICENSE-2.0 . */ module com { module sun { module star { module io { published interface XInputStream; };};};}; module com { module sun { module star { module sdbc { /** is the representation (mapping) of an SQL BLOB.
A SQL
BLOB
is a built-in type that stores a
Binary Large Object as a column value in a row of a database table.
The driver implements
BLOB
using a
SQL
locator(BLOB)
, which means that a
Blob
object contains a logical pointer to the SQL
BLOB
data rather than the data itself.
A
Blob
object is valid for the duration of the transaction in which is was created.
Methods in the interfaces
com::sun::star::sdbc::XResultSet
,
and
com::sun::star::sdbc::XPreparedStatement
, such as
getBlob
and
setBlob
allow a programmer to access the SQL
BLOB.
The
Blob
interface provides methods for getting the length of a SQL
BLOB
(Binary Large Object) value, for materializing a
BLOB
value on the client and for determining the position of a pattern of bytes within a
BLOB
value.
Blob
object.
@returns
the length
@throws SQLException
if a database access error occurs.
*/
hyper length() raises (SQLException);
/** returns as an array of bytes part or all of the
BLOB
value that this
Blob
object designates. The byte
array contains up to
length
consecutive bytes
starting at position
pos
.
@param pos
is the ordinal position of the first byte in the
BLOB
value to be extracted; the first byte is at
position 1.
@param length
is the number of consecutive bytes to be copied.
@returns
a byte array containing up to
length
consecutive bytes from the
BLOB
value designated
by this
Blob
object, starting with the byte at position
pos
.
@throws SQLException
if there is an error accessing the BLOB.
*/
sequenceBlob
instance as a stream.
@returns
the stream
@throws SQLException
if a database access error occurs.
*/
com::sun::star::io::XInputStream getBinaryStream()
raises (SQLException);
/** determines the byte position at which the specified byte
pattern
begins within the
BLOB
value that this
Blob
object represents. The
search for
pattern
begins at position start
.
@param pattern
the pattern to search
@param start
the start position for the search
@returns
the position
@throws SQLException
if a database access error occurs.
*/
hyper position([in]sequenceBlob
object at which
pattern
begins. The search begins at position start
.
@param pattern
the pattern to search
@param start
position to start
@returns
the position
@throws SQLException
if a database access error occurs.
*/
hyper positionOfBlob([in]XBlob pattern,[in] hyper start)
raises (SQLException);
};
}; }; }; };
/*===========================================================================
===========================================================================*/
/* vim:set shiftwidth=4 softtabstop=4 expandtab: */