KDb

SqlitePreparedStatement.h
1/* This file is part of the KDE project
2 Copyright (C) 2005-2016 Jarosław Staniek <staniek@kde.org>
3
4 This library is free software; you can redistribute it and/or
5 modify it under the terms of the GNU Library General Public
6 License as published by the Free Software Foundation; either
7 version 2 of the License, or (at your option) any later version.
8
9 This library is distributed in the hope that it will be useful,
10 but WITHOUT ANY WARRANTY; without even the implied warranty of
11 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
12 Library General Public License for more details.
13
14 You should have received a copy of the GNU Library General Public License
15 along with this library; see the file COPYING.LIB. If not, write to
16 the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
17 * Boston, MA 02110-1301, USA.
18*/
19
20#ifndef KDB_SQLITEPREPAREDSTATEMENT_H
21#define KDB_SQLITEPREPAREDSTATEMENT_H
22
23#include "KDbPreparedStatementInterface.h"
24#include "SqliteConnection_p.h"
25
26class KDbField;
27
28/*! Implementation of prepared statements for the SQLite driver. */
29class SqlitePreparedStatement : public KDbPreparedStatementInterface, public SqliteConnectionInternal
30{
31public:
32 explicit SqlitePreparedStatement(SqliteConnectionInternal* conn);
33
34 ~SqlitePreparedStatement() override;
35
36protected:
37 bool prepare(const KDbEscapedString& sql) override;
38
39 Q_REQUIRED_RESULT QSharedPointer<KDbSqlResult> execute(
41 const KDbField::List &selectFieldList, KDbFieldList *insertFieldList,
42 const KDbPreparedStatementParameters &parameters) override;
43
44 bool bindValue(KDbField *field, const QVariant& value, int arg);
45
46 inline SqliteSqlResult *sqlResult() { return static_cast<SqliteSqlResult*>(m_sqlResult.data()); }
47
49private:
50 Q_DISABLE_COPY(SqlitePreparedStatement)
51};
52
53#endif
Specialized string for escaping.
Meta-data for a field.
Definition KDbField.h:72
Prepared statement interface for backend-dependent implementations.
Type
Defines type of the prepared statement.
QSharedPointer< KDbSqlResult > execute(KDbPreparedStatement::Type type, const KDbField::List &selectFieldList, KDbFieldList *insertFieldList, const KDbPreparedStatementParameters &parameters) override
For implementation, executes the prepared statement Type of statement is specified by the type parame...
bool prepare(const KDbEscapedString &sql) override
bool bindValue(KDbField *field, const QVariant &value, int arg)
T * data() const const
This file is part of the KDE documentation.
Documentation copyright © 1996-2024 The KDE developers.
Generated on Sat Dec 21 2024 17:00:42 by doxygen 1.12.0 written by Dimitri van Heesch, © 1997-2006

KDE's Doxygen guidelines are available online.