Akonadi

dbintrospector_impl.h
1/*
2 SPDX-FileCopyrightText: 2006 Tobias Koenig <tokoe@kde.org>
3 SPDX-FileCopyrightText: 2012 Volker Krause <vkrause@kde.org>
4
5 SPDX-License-Identifier: LGPL-2.0-or-later
6*/
7
8#pragma once
9
10#include "dbintrospector.h"
11
12namespace Akonadi
13{
14namespace Server
15{
16class DbIntrospectorMySql : public DbIntrospector
17{
18public:
19 explicit DbIntrospectorMySql(const QSqlDatabase &database);
20 QList<ForeignKey> foreignKeyConstraints(const QString &tableName) override;
21 QString hasIndexQuery(const QString &tableName, const QString &indexName) override;
22 QString getAutoIncrementValueQuery(const QString &tableName, const QString &idColumn) override;
23 QString updateAutoIncrementValueQuery(const QString &tableName, const QString &idColumn, qint64 value) override;
24};
25
26class DbIntrospectorSqlite : public DbIntrospector
27{
28public:
29 explicit DbIntrospectorSqlite(const QSqlDatabase &database);
30 QList<ForeignKey> foreignKeyConstraints(const QString &tableName) override;
31 QString hasIndexQuery(const QString &tableName, const QString &indexName) override;
32 QString getAutoIncrementValueQuery(const QString &tableName, const QString &idColumn) override;
33 QString updateAutoIncrementValueQuery(const QString &tableName, const QString &idColumn, qint64 value) override;
34};
35
36class DbIntrospectorPostgreSql : public DbIntrospector
37{
38public:
39 explicit DbIntrospectorPostgreSql(const QSqlDatabase &database);
40 QList<ForeignKey> foreignKeyConstraints(const QString &tableName) override;
41 QString hasIndexQuery(const QString &tableName, const QString &indexName) override;
42 QString getAutoIncrementValueQuery(const QString &tableName, const QString &idColumn) override;
43 QString updateAutoIncrementValueQuery(const QString &tableName, const QString &idColumn, qint64 value) override;
44};
45
46} // namespace Server
47} // namespace Akonadi
Helper integration between Akonadi and Qt.
This file is part of the KDE documentation.
Documentation copyright © 1996-2024 The KDE developers.
Generated on Mon Nov 18 2024 12:08:30 by doxygen 1.12.0 written by Dimitri van Heesch, © 1997-2006

KDE's Doxygen guidelines are available online.