22#include <com/sun/star/sdbc/XStatement.hpp>
23#include <com/sun/star/sdbc/XWarningsSupplier.hpp>
24#include <com/sun/star/sdbc/XMultipleResults.hpp>
25#include <com/sun/star/sdbc/XBatchExecution.hpp>
26#include <com/sun/star/sdbc/XCloseable.hpp>
27#include <com/sun/star/sdbc/SQLWarning.hpp>
28#include <com/sun/star/sdbc/XGeneratedResultSet.hpp>
29#include <com/sun/star/util/XCancellable.hpp>
39#include <com/sun/star/lang/XServiceInfo.hpp>
44 typedef ::cppu::WeakComponentImplHelper< css::sdbc::XStatement,
45 css::sdbc::XWarningsSupplier,
46 css::util::XCancellable,
47 css::sdbc::XCloseable,
48 css::sdbc::XGeneratedResultSet,
77 sal_Int64 getQueryTimeOut()
const;
78 sal_Int64 getMaxFieldSize()
const;
79 sal_Int64 getMaxRows()
const;
80 sal_Int32 getResultSetConcurrency()
const;
81 sal_Int32 getResultSetType()
const;
82 sal_Int32 getFetchDirection()
const;
83 sal_Int32 getFetchSize()
const;
84 OUString getCursorName()
const;
85 bool isUsingBookmarks()
const;
86 bool getEscapeProcessing()
const;
87 template <
typename T, SQLINTEGER BufferLength > T getStmtOption (SQLINTEGER fOption)
const;
89 void setQueryTimeOut(sal_Int64 _par0) ;
90 void setMaxFieldSize(sal_Int64 _par0) ;
91 void setMaxRows(sal_Int64 _par0) ;
92 void setFetchDirection(sal_Int32 _par0) ;
93 void setFetchSize(sal_Int32 _par0) ;
94 void setCursorName(std::u16string_view _par0);
95 void setEscapeProcessing(
const bool _bEscapeProc );
96 template <
typename T, SQLINTEGER BufferLength > SQLRETURN setStmtOption (SQLINTEGER fOption, T value)
const;
98 void setResultSetConcurrency(sal_Int32 _par0) ;
99 void setResultSetType(sal_Int32 _par0) ;
100 void setUsingBookmarks(
bool _bUseBookmark) ;
107 void clearMyResultSet();
113 bool lockIfNecessary (
const OUString&
sql);
116 sal_Int32 getColumnCount();
125 css::uno::Reference<css::sdbc::XResultSet> getResultSet(
bool checkCount);
133 SQLLEN getRowCount();
136 void disposeResultSet();
139 virtual ::cppu::IPropertyArrayHelper* createArrayHelper( )
const override;
141 virtual ::cppu::IPropertyArrayHelper & SAL_CALL getInfoHelper()
override;
143 css::uno::Any & rConvertedValue,
144 css::uno::Any & rOldValue,
146 const css::uno::Any& rValue )
override;
149 const css::uno::Any& rValue
152 css::uno::Any& rValue,
159 using OStatement_BASE::operator css::uno::Reference< css::uno::XInterface >;
163 return m_pConnection->getOdbcFunction(_nIndex);
166 virtual void SAL_CALL disposing()
override;
168 virtual void SAL_CALL release() noexcept override;
169 virtual
void SAL_CALL acquire() noexcept override;
171 virtual css::
uno::Any SAL_CALL queryInterface( const css::
uno::
Type & rType ) override;
173 virtual css::
uno::Sequence< css::
uno::
Type > SAL_CALL getTypes( ) override;
176 virtual css::
uno::Reference< css::beans::XPropertySetInfo > SAL_CALL getPropertySetInfo( ) override;
178 virtual css::
uno::Reference< css::sdbc::XResultSet > SAL_CALL executeQuery( const OUString&
sql ) override ;
179 virtual sal_Int32 SAL_CALL executeUpdate( const OUString&
sql ) override ;
180 virtual
sal_Bool SAL_CALL execute( const OUString&
sql ) override ;
181 virtual css::
uno::Reference< css::sdbc::XConnection > SAL_CALL
getConnection( ) override ;
183 virtual css::
uno::Any SAL_CALL getWarnings( ) override;
184 virtual
void SAL_CALL clearWarnings( ) override;
186 virtual
void SAL_CALL cancel( ) override;
188 virtual
void SAL_CALL close( ) override;
190 virtual css::
uno::Reference< css::sdbc::XResultSet > SAL_CALL getResultSet( ) override;
191 virtual sal_Int32 SAL_CALL getUpdateCount( ) override;
192 virtual
sal_Bool SAL_CALL getMoreResults( ) override;
194 virtual css::
uno::Reference< css::sdbc::XResultSet > SAL_CALL getGeneratedValues( ) override;
197 SQLHANDLE getConnectionHandle() {
return m_pConnection->getConnection(); }
205 SQLUINTEGER getCursorProperties(SQLINTEGER _nCursorType,
bool bFirst);
218 virtual void SAL_CALL disposing()
override;
223 public css::sdbc::XBatchExecution,
224 public css::lang::XServiceInfo
233 virtual css::uno::Any SAL_CALL
queryInterface(
const css::uno::Type & rType )
override;
234 virtual void SAL_CALL acquire() noexcept override;
235 virtual
void SAL_CALL release() noexcept override;
237 virtual
void SAL_CALL addBatch( const OUString&
sql ) override;
238 virtual
void SAL_CALL clearBatch( ) override;
239 virtual css::
uno::Sequence< sal_Int32 > SAL_CALL executeBatch( ) override;
virtual css::uno::Any SAL_CALL getFastPropertyValue(sal_Int32 nHandle) override final
OStatement_BASE2(OConnection *_pConnection)
oslGenericFunction getOdbcFunction(ODBC3SQLFunctionId _nIndex) const
virtual void SAL_CALL getFastPropertyValue(css::uno::Any &rValue, sal_Int32 nHandle) const override
virtual void SAL_CALL setFastPropertyValue_NoBroadcast(sal_Int32 nHandle, const css::uno::Any &rValue) override
css::uno::WeakReference< css::sdbc::XResultSet > m_xResultSet
void setWarning(const css::sdbc::SQLWarning &ex)
SQLHANDLE m_aStatementHandle
css::uno::Reference< css::sdbc::XStatement > m_xGeneratedStatement
std::vector< OUString > m_aBatchVector
SQLUSMALLINT * m_pRowStatusArray
rtl::Reference< OConnection > m_pConnection
OConnection * getOwnConnection() const
css::sdbc::SQLWarning m_aLastWarning
virtual sal_Bool SAL_CALL convertFastPropertyValue(css::uno::Any &rConvertedValue, css::uno::Any &rOldValue, sal_Int32 nHandle, const css::uno::Any &rValue) override
OStatement(OConnection *_pConnection)
virtual css::uno::Any SAL_CALL queryInterface(const css::uno::Type &rType) override
virtual ~OStatement() override
::cppu::ImplHelper1< css::sdbc::XStatement > OStatement_Base
::cppu::WeakComponentImplHelper< css::sdbc::XStatement, css::sdbc::XWarningsSupplier, css::util::XCancellable, css::sdbc::XCloseable, css::sdbc::XGeneratedResultSet, css::sdbc::XMultipleResults > OStatement_BASE
#define OOO_DLLPUBLIC_ODBCBASE