186 Commits

Author SHA1 Message Date
Kacperos155
04a4c2e8ef Use transparent comparator in mColumnNames to avoid creating std::string when comparing 2022-07-24 19:07:03 +02:00
Kacperos155
d9e5a74773 Small improvements & code cleanup 2022-07-24 19:05:53 +02:00
Sébastien Rombauts
6522b85f9e Fix cpplint warnings about missing & extra spaces 2022-07-24 18:33:10 +02:00
Sébastien Rombauts
7d8b69e797 Remove extra {} in declaration 2022-07-24 18:28:25 +02:00
Sébastien Rombauts
cd24b93bba
Merge pull request #346 from guoh27/master
Add compatible definition for std::experimental::filesystem
2022-07-24 18:04:20 +02:00
modest
bfb8e6a017
Fix compilation issues earlier than iOS 13 (#359)
Co-authored-by: 叶 永平 <yyp@xieyongpingdeMacBook-Pro.local>
2022-07-24 14:21:23 +02:00
Kacperos155
c5b3aa83a2 Restored Statement move constructor for compatibility with older compilers 2022-01-26 04:44:47 +01:00
Kacperos155
27a32521b7 Add test for Column std::shared_ptr; remove noexcept from throwing Column constructor 2022-01-26 04:19:10 +01:00
Kacperos155
10d779a349 Fixed #349; Column throw when constructed with nullptr 2022-01-26 03:22:17 +01:00
Kacperos155
354323a875 Minor refactoring to Statement and Column 2022-01-25 20:56:48 +01:00
Kacperos155
2800b65ac6 Set Statement move constractor to default; fix #347 2022-01-25 20:32:40 +01:00
Kacperos155
6da299db12 Replace Statement::Ptr with std::shared_ptr 2022-01-25 19:13:02 +01:00
Kacperos155
edf49ee141 Long size checks replaced with fixed width ints 2022-01-25 13:28:51 +01:00
hong.guo
2971d4c975 add compatible definition for std::experimental::filesystem 2021-11-26 13:20:14 +08:00
Sébastien Rombauts
beb2b29640 Update copyright to 2021 2021-10-06 18:40:51 +02:00
John Jenkins
abd139c597 Allow specifying transaction behaviors DEFERRED, IMMEDIATE, and EXCLUSIVE 2021-10-04 16:27:08 -05:00
Jason Rhinelander
bfe0221b8c Disable std::filesystem on macOS targetting <10.15
macOS flat out refuses to compile if you touch std::filesystem when
targetting macOS < 10.15 (to be able to deploy a binary to older macOS
versions).

This disables the std::filesystem support when in C++17 mode with such a
target.
2021-08-19 22:01:23 -03:00
Sébastien Rombauts
64c34bc7bd Added unit tests for new getChanges() and fix comment being too long 2021-07-25 10:46:56 +02:00
Sébastien Rombauts
ca7c0e5f1a Added Database and Statement method getChanges()
Fix #331 How to get the number of updated/deleted rows?

Fix cpplint warnings about line size with a NOLINT comment when better to keep oneline
2021-07-25 10:46:56 +02:00
Sébastien Rombauts
f6b32259f2 Fix build with system provided lib older than SQlite 3.31.0 from 2020-01-22 2021-01-18 13:05:56 +01:00
Sébastien Rombauts
e779e68c78
Merge pull request #305 Add other constants that work with sqlite3_open_v2 from LuAPi/more-flags 2021-01-18 12:35:53 +01:00
Ivan Shynkarenka
114f89de30
Fix #317 Visual Studio 2019 compilation error ('SQLite::Database::Database': delegating constructor calls itself) (#318)
* Visual Studio 2019 compilation error ('SQLite::Database::Database': delegating constructor calls itself) #317

* Visual Studio 2019 compilation error ('SQLite::Database::Database': delegating constructor calls itself) #317

* Visual Studio 2019 compilation error ('SQLite::Database::Database': delegating constructor calls itself) #317
2021-01-09 08:57:37 +01:00
Sébastien Rombauts
cac0000ada Merge #299 Added Savepoint support from catalogm 2021-01-06 11:07:44 +01:00
Patrick Servello
81e5a1f910
Add Database constructor for filesystem::path #296 (#314)
* Add Database constructor for filesystem::path #296

* Fixed incorrect MSVC version value for C++17

* Updated another incorrect version string

* Updated MSVC compiler check again. The <filesystem> header wasn't transitioned from std::experimental until MSVC 15.7

* Changed version check to look at c++ version no MSVC version
2021-01-06 08:41:32 +01:00
Benjamin Stauffer
1d0d8fe446 Add Database::tryExec()
Similar to Statement::tryExecuteStep(), allows calls to sqlite3_exec()
with the caller assuming responsibility for checking and handling the
returned status.
2020-11-12 02:05:05 -06:00
Luke Pitt
503afc396c Add other constants that work with sqlite3_open_v2 2020-10-08 12:48:42 +01:00
Kelvin Hammond
ee6762c0d9 Added: Savepoint support 2020-09-10 18:59:08 -04:00
Sébastien Rombauts
4e3d36af2d Release 3.1.1 2020-08-19 18:02:41 +02:00
Sébastien Rombauts
cc2e488d1a
Merge pull request #291 Add OPEN_FULLMUTEX flag into Database.h file from rwrx/fullmutex-flag 2020-08-12 00:03:55 +02:00
Tomas Vajda
27f2cd2a7b Add OPEN_FULLMUTEX flag into Database.h file 2020-08-11 18:40:08 +02:00
Sébastien Rombauts
80b58170a8 Release 3.1.0 2020-08-11 17:05:57 +02:00
Daniel Schmidt
0c9d4a3f36 Improved name of new function, documentation and tests. 2020-03-26 09:19:27 +01:00
Daniel Schmidt
98aff92081 Implemented getDeclaredType with documentation. 2020-03-16 15:26:30 +01:00
Sébastien Rombauts
ffc1a3ef65 Fix the SQLITECPP_PURE_FUNC macro to actually use the correct "pure" attribute 2020-01-14 10:31:27 +01:00
KOLANICH
51bd6d66ea Added a pure method. Should improve efficiency 2020-01-13 12:56:14 +03:00
Sébastien Rombauts
cb421a8518
Merge pull request #242 from KOLANICH/efficiency_1
- Added a `getIndex` method and used it.
- Improved code reuse.
- Moved some functions from sources into headers.
2020-01-09 14:09:39 +01:00
Sébastien Rombauts
3757998c16 Improve test coverage of Database: improve tests & remove a variant of createFunction() 2020-01-04 22:28:55 +01:00
Sébastien Rombauts
dcc623d745 Remove some redundant inline keywords 2020-01-04 20:46:11 +01:00
Sébastien Rombauts
4f4d833868 Add a new non static variant for getHeaderInfo() (TODO: need unit tests) 2020-01-04 19:11:24 +01:00
Sébastien Rombauts
9ea0cffc15 Replace Database::backup() "C" implementation by calling the Backup class 2020-01-03 22:58:42 +01:00
Sébastien Rombauts
92ff87be60 Conversion of sqlite3* Database::mpSQLite to a std::unique_ptr with a custom Deleter
I might switch to a std::shared_ptr to share it with Statement objects if more appropriate
2020-01-03 22:56:13 +01:00
Sébastien Rombauts
da4d692c13 Start a new 3.x branch requiring C++11 and CMake 3.1
- Remove support for Visual Studio < 2015
- Remove Statement::isOk() deprecated in 2.2.0 and renamed to Statement::hasRow()
2020-01-02 00:04:06 +01:00
Sébastien Rombauts
e6288ee920 Update copyright notice 2020-01-01 08:08:59 +01:00
Sébastien Rombauts
fd7958b809 Release 2.5.0 2019-12-31 21:33:49 +01:00
Patrick Servello
b5c0a08d3d Added SQLite header parsing functionality and associated tests (#249)
* Added SQLite header parsing functionality and associated tests

* Removed unused header file.

* Removed an accidental copy pasted remove() statement

* Replaced stdint with plain old C types for now. Will apply fixed with datatypes to cpp11 branch

* Added test scenarios to simulate blank file name, non existant file and a corrupt header

* Refactored exception flow to match latest tidying, brought casts out of function calls and cleared up invalid header exception message
2019-12-30 13:45:51 +01:00
Sébastien Rombauts
dc3f1ac271 Add unit test for Database::createFunction()
using an example from
https://stackoverflow.com/a/8283265/1163698 How can I create a user-defined function in SQLite?
2019-12-29 22:22:10 +01:00
KOLANICH
b98eabbe9f Moved some functions from sources into headers. 2019-12-26 11:54:23 +03:00
KOLANICH
5ff189a69c Added a getIndex method and used it. 2019-12-26 11:53:51 +03:00
Sébastien Rombauts
8015952b93 Fix #216 Set PROJECT_VERSION to fix CMP0048 Policy warnings 2019-08-25 21:38:39 +02:00
Sébastien Rombauts
c1ab7075f4 Fix compilation of new enum Database::BackupType for C++98 2019-07-09 09:37:05 +02:00