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
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
Oleg Smolsky
514d7d6846
Implement Database::backup() ( #211 )
...
Easily backup/restore a live DB via the sqlite3_backup_init() API
- https://www.sqlite.org/backup.html
- https://www.sqlite.org/c3ref/backup_finish.html#sqlite3backupinit
Use the reference implementation from the documentation
2019-07-09 09:35:31 +02:00
maxbachmann
3ba20a3519
Improve execute many and fix GCC 9 Build by explicitly scoping SQLiteCpp::bind()
...
Fix #206 #207
2019-06-27 21:44:03 +02:00
Sébastien Rombauts
49c1f6c08d
Rename Statement::getExpandedSQL() from #201 and fix #203 #205 memory leak
2019-06-24 22:01:54 +02:00
Sébastien Rombauts
9b00034b06
Merge pull request #201 from os12/master
...
Add Statement::getExtendedSQL()
2019-06-18 20:24:33 +02:00
Sébastien Rombauts
1eda5c751c
Minor cleanup of the codebase, mostly putting braces on their own line in unit tests
2019-06-16 15:48:57 +02:00
maxbachmann
b38e88decb
add tuple_bind and execute_many ( #197 )
...
added the option to use a tuple with values to bind.
use this to implement executeMany as described in #24 , so it will be possible to pass multiple tuples
2019-06-16 10:46:21 +02:00
Oleg Smolsky
ce45099695
Add Statement::getExtendedSQL()
...
- it returns a UTF-8 string containing the SQL text of prepared statement with
bound parameters expanded
2019-06-15 10:27:30 -07:00
maxbachmann
81913790f2
Update VariadicBind.h for C++11 instead of C++14 ( #196 )
...
* Update VariadicBind.h
* replace c++14 by c++11
* activate tests for c++11
* replace string_literals for c++11 support
2019-05-16 08:41:29 +02:00
Linus Klöckner
65ecffba01
Fix problem with MSVC 19
...
"error C2039: '_snprintf': is not a member of 'std'"
2019-03-30 11:14:39 +01:00
Sébastien Rombauts
f2b1017710
Add a Statement::Ptr move constructor to fix leak because of ref counter incremented on copy
2019-03-05 00:20:06 +01:00
Sébastien Rombauts
f1301a4a11
Merge pull request #192 from jrave/bind_parameter_count
...
Add wrapper for bind parameter count
2019-03-04 20:18:49 +01:00
Sébastien Rombauts
78915c8f43
Fix #190 Add Statement move constructor
2019-03-04 18:43:59 +01:00
Johannes Rave
1dab172264
Add wrapper for bind parameter count
2019-03-04 18:43:32 +02:00
Sébastien Rombauts
678562e727
Implement Database move constructors for MSVC #190
...
Added checks to proper _MSC_VER 1600 (VS2010)
2019-03-03 22:02:58 +01:00
Sébastien Rombauts
09dd10886c
Release 2.3.0
2019-03-03 20:53:02 +01:00
Sébastien Rombauts
35aaf73191
Add implicit cast operators to char & short and their unsigned variants
...
Fix #179 error: conversion from 'SQLite::Column' to 'unsigned char' is ambiguous
2019-03-03 09:54:40 +01:00
Sébastien Rombauts
2e69a81ccf
Fix #189 unit test "Column.basis" failing on Visual Studio 2013
...
The implicit cast to std::string() would fallback to const char* with MSVC 2010-2013 (witch does not work with the NULL char in the middle)
Without it, trying to access a binary blob with implicit cast to string
ends up converting it to a C-style char*, damaging the data by truncating it to the first null character!
2019-03-03 08:55:18 +01:00
Sébastien Rombauts
df7d113a3b
Add test case to try to repro the reported ambiguous bind() int64_t on LP64 Android
2019-03-02 23:43:03 +01:00
Sébastien Rombauts
2cb3cb2fef
Update copyright notice
2019-03-02 15:46:53 +01:00
Sébastien Rombauts
9667c523a0
Merge pull request #157 from hubslave/patch-1
...
Add a move constructor to Database
2019-02-13 09:10:03 +01:00
Jakub Fornadel
b280587204
Update VariadicBind.h
...
Remove warning: expression result unused [-Wunused-value]
https://stackoverflow.com/questions/14370043/can-operators-be-overloaded-for-initializer-list-literals
2018-12-18 11:44:35 +01:00
hubslave
65f719d82b
Add a move constructor to Database
...
This makes it possible to e.g. return Databases from functions. Gated behind a __cplusplus >= 201103L check for compatibility with older C++ versions.
2018-03-29 16:48:16 +03:00
Sébastien Rombauts
a41629f9ed
Fix #155 Statement::bind truncates long integer to 32 bits on x86_64 Linux
...
Reproduced the problem with a dedicated unit test, then fixed the bug.
Thanks @tszypenbejl for the clear analysis and the fix.
2018-02-23 17:10:53 +01:00
Sébastien Rombauts
d020c5f694
Update copyright notices to 2018
2018-01-24 11:26:38 +01:00
Sébastien Rombauts
86985dfd1f
Fix nullptr detection with AppleClang
2017-12-17 21:42:23 +01:00
Sébastien Rombauts
5ed4a1ab79
nullptr compatibility: special detection for clang
2017-12-13 17:18:48 +01:00
Sébastien Rombauts
4f32da182c
Add my Utils.h file to define nullptr on C++98 and C++03 compilers
2017-12-13 10:34:55 +01:00
Alexander Guettler
cebea884c3
Add the fix from a3160dcfc2f80f692f3477a67c202ff87f75fa5a also to the bind by name functions
2017-11-09 11:05:01 -08:00
Sébastien Rombauts
a3160dcfc2
Add Statement binding for long int values to Fix #147
2017-11-06 13:02:23 +01:00
Sébastien Rombauts
eb065bf741
Update version to 2.2.0
2017-09-19 15:17:26 +02:00
Sébastien Rombauts
4f7899c959
Rename Statement::mbIsOk to mbHasRow
2017-08-28 17:17:18 +02:00
Sébastien Rombauts
c14d884ba5
Mutualize code into tryExecuteStep() from PR #142 using SQLITE_MISUSE when statement needs to be reseted
2017-08-28 17:10:38 +02:00
Sébastien Rombauts
94c7897d1b
Cleanup on PR #142 : remove whitespaces and mutualize some code
2017-08-28 16:00:50 +02:00
Henrik Jakobsson Majava
8191046ea5
Added tryExecuteStep and tryReset
2017-08-28 11:00:17 +02:00
Sébastien Rombauts
1a46a942b3
Merge pull request #140 from fekir/clean_destructors
...
Remove virtual destructor since there are no virtual methods or subclasses
2017-08-22 22:38:04 +02:00
fekir
ec8253236b
Remove virtual destructor since there are no virtual methods or subclasses
2017-08-22 18:32:40 +02:00
Sébastien Rombauts
5479cc09bf
Merge pull request #139 from fekir/clean_destructors
...
Remove unnecessary noexcept identifier from destructors
2017-08-22 11:07:03 +02:00
fekir
1fd32277c1
Remove unnecessary noexcept identifier from destructors
2017-08-21 22:01:21 +02:00
Sébastien Rombauts
926ebdab8f
Merge pull request #137 from fekir/remove_noexcept
...
Remove noexcept
2017-08-21 11:12:16 +02:00
fekir
67ac88fb1e
Add SQLite::Exception constructor that takes const char* in order to avoid possible std::bad_alloc exception
...
std::runtime_error provides such overload in c++11, therefore it will make no difference when compiling for c++03, but should provide no harm either
2017-08-19 08:59:57 +02:00
fekir
94ebe5ced6
Add default copy constructor to exception class
...
The throw statement may copy the exception, since exception are thrown by value
Having const members disables the assignment operator
2017-08-19 08:53:01 +02:00
fekir
db156e6282
Remove noexcept from setBusyTimeout since it may throw (it is also documented)
2017-08-18 20:20:55 +02:00
fekir
697929cfbe
Remove noexcept since std::string constructor may throw
2017-08-18 20:20:29 +02:00
Sébastien Rombauts
670d710f62
Update version to 2.1.0 and add appropriate changelog
2017-07-18 14:56:18 +02:00
Sébastien Rombauts
1a2c7cbba7
Update sqlite3 from 3.13 to 3.19.3 (2017-06-08)
...
Fix #125 Incompatibility in 3.19.0 using a new CMake variable SQLITE_USE_LEGACY_STRUCT
2017-07-18 14:55:25 +02:00
Sébastien Rombauts
078941cdb1
Fix #130 Statement::getColumns() template function now uses T{} instead of T()
...
Thanks to @cycycyc for providing this improvement
2017-07-17 15:26:02 +02:00
Timothy Rae
4c339031f0
Remove const from Database::isUnencrypted() return type
...
Compiling with gcc pedantic mode was leading to a warning: "type qualifiers ignored on function return type"
2017-03-31 12:12:46 +09:00