DotNetDupe 4.0.6
C++17/20 Implementation of the .NET Base Class Library (BCL)
Loading...
Searching...
No Matches
SqliteDatabaseBackend.h
Go to the documentation of this file.
1#pragma once
2#include "Common.h"
5
6#if defined(DOTNETDUPE_USE_SQLITE)
7
8namespace DotNetDupe {
9 namespace System {
10 namespace Data {
11 namespace Internal {
12
18 class SqliteDatabaseBackend : public IDatabaseBackend {
19 private:
20 struct Impl;
21 DotNetDupe::System::SmartPointer<Impl> m_pImpl;
22
23 public:
27 DOTNETDUPE_API SqliteDatabaseBackend(const DotNetDupe::System::String& connStr);
28
30 DOTNETDUPE_API ~SqliteDatabaseBackend() override;
31
33 DOTNETDUPE_API void ClearDatabase() override;
34
42 DOTNETDUPE_API Collections::Generic::List<Row> Execute(
43 const String& sql,
44 const Collections::Generic::Dictionary<String, String>& parameters,
45 Collections::Generic::List<String>& columnNames,
46 int& rowsAffected
47 ) override;
48 };
49
50 }
51 }
52 }
53}
54#endif
Defines common cross-platform macros, export decorators, and fundamental types.
#define DOTNETDUPE_API
Platform-specific linkage decoration for exporting or importing library symbols.
Definition Common.h:20
Provides reference-counted and weak pointer memory management primitives ensuring zero raw ownership.
Interface defining the contract for database storage backends in DotNetDupe.