94 Commits

Author SHA1 Message Date
fekir
1fd32277c1 Remove unnecessary noexcept identifier from destructors 2017-08-21 22:01:21 +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
dunkelfalke
f4a7e7c7ea Update Statement.h
Missing parameter name in the documentation comment
2017-03-21 17:45:39 +01:00
dend
f01a644dc0 Added convenience functions for constructing objects from a row 2017-02-12 22:10:29 -05:00
Jorrit Wronski
f5a25167a4 Debugging GCC build errors remotely is not fun... 2016-12-23 14:16:37 +01:00
Jorrit Wronski
823828fc9e Made encryption test static and fixed the encryption docs 2016-12-23 13:52:59 +01:00
Jorrit Wronski
02f8fe19c0 Fixed some documentation and corrected the encryption detection. 2016-12-23 08:02:13 +01:00
Jorrit Wronski
685ff293c5 moved the key handling to a new function, added a check for an encrypted database 2016-12-22 17:52:06 +01:00
Jorrit Wronski
611ab22458 Added ability to open encrypted databases. 2016-12-01 23:37:22 +01:00
Mikhail Komarov
51885d7aa6 Redundant const specifier removed 2016-09-09 13:31:36 +03:00
Sébastien Rombauts
d04c8699d2 Apply code style 2016-08-05 07:56:20 +02:00
Jens Alfke
30e285ff89 Fixed link errors calling Exception::getErrorCode()
getErrorCode() and getExtendedErrorCode()'s implementations were
accidentally declared as inline in the .cpp file. This causes the
compiler to not generate any code for them, resulting in link errors
when a client calls them.

Fixed by moving the implementations into the header, where they need to
be if they're inline.
2016-08-04 16:36:09 -07:00
Sébastien Rombauts
53c727c68d Update version to 2.0.0 2016-07-25 22:21:04 +02:00
Sébastien Rombauts
648ffe01e8 Add Database::VERSION, getLibVersion() and getLibVersionNumber()
Usefull to get SQLite3 version without including sqlite3.h in application code
2016-07-25 21:53:47 +02:00
Sébastien Rombauts
f77b707206 Revert recent switch from uint32_t/int64_t to use int/unsigned/long/long long and fix #93 2016-07-19 10:56:08 +02:00
Sébastien Rombauts
223c14139b Minor comment style cleanups 2016-07-16 17:04:49 +02:00
Sébastien Rombauts
7983b81f75 Mutualize code between getColumn(name) and isColumnNull(name) with a getColumnIndex(name)
- mColumnNames is mutable so that getColumnIndex() and isColumnNull() can be const
2016-07-16 16:33:44 +02:00
Bruno Coelho
f022c6af60 Add option to check if column is null by name 2016-07-15 16:15:34 +01:00
Sébastien Rombauts
401b7361ed Renamed errmsg() and getErrStr() methods to getErrorMsg() and getErrorStr() 2016-07-13 18:37:22 +02:00
Sébastien Rombauts
91abc3cb44 Remove unused Exception constructor 2016-07-13 18:32:44 +02:00
Sébastien Rombauts
fd8f50bdd9 Remove last #include <sqlite3.h> from a header : add a few public constants
- Move #include <sqlite3.h> from Exception.h to a new corresponding .cpp
 - Add SQLite::OPEN_READONLY...
2016-07-13 17:16:41 +02:00
Sébastien Rombauts
57d991b85e Complete unit tests for Database::errmsg() 2016-07-08 17:41:35 +02:00
Sébastien Rombauts
fb5508921a Move #include <sqlite3.h> from Database.h to the .cpp 2016-07-08 17:07:59 +02:00
Sébastien Rombauts
ed052a36bd Add unit test for bindNoCopy() 2016-07-07 21:53:45 +02:00
Sébastien Rombauts
8275c7fb29 Move #include <sqlite3.h> from Statement.h to the .cpp 2016-07-07 08:43:32 +02:00
Sébastien Rombauts
2abcf45bb9 Remove Column::errmsg() method : use Database or Statement equivalents 2016-07-06 21:41:04 +02:00
Sébastien Rombauts
300f278281 Move #include <sqlite3.h> from Column.h to the .cpp 2016-07-06 21:20:19 +02:00
Sébastien Rombauts
b033abb3fd Add unit tests for the new Column getter and cast operator 2016-07-06 21:20:19 +02:00
Sébastien Rombauts
646d25ca95 Switch from sqlite3_int64 to int64_t 2016-07-05 11:05:16 +02:00
Sébastien Rombauts
a2abbf1d96 Fix Doxygen comments 2016-07-05 08:02:23 +02:00
Sébastien Rombauts
db7aefb271 Renamed Backup accessors and use a forward declaration to sqlite3_backup 2016-07-05 07:49:38 +02:00
Sébastien Rombauts
9c03f4e86b Add bindNoCopy() for C-style null-terminated text strings 2016-07-03 16:55:27 +02:00
Sébastien Rombauts
e7384b30a8 Remove unfinished Statement move constructor from PR #86
- see comments in code: needs a move constructor on Statement::Ptr
2016-07-02 14:14:08 +02:00
Sébastien Rombauts
bcdbea2cf8 Style cleanup on top of PR #86 2016-07-02 14:11:02 +02:00
Douglas Heriot
9a07f3918d Fix build on Linux, including cpplint warnings. 2016-07-02 14:05:14 +02:00
Douglas Heriot
a84c04aada Add bindNoCopy methods to allow binding std::string with SQLITE_STATIC.
Should be safe, as long as you can guarantee the std::string exists while executing the query.

Added an accessor to Column that returns a std::string, that can handle BLOB or TEXT values that contain null-bytes.

Also more binding & Column cast support for uint32_t - fixes ambiguous overload errors when using unsigned-integer types.
Note that I didn't use uint64_t, because unsigned 64-bit integers doesn't fit into SQLite (except for using int64_t and dealing with overflow with custom functions).

Added a C++11 move constructor to Statement, to allow storing it inside STL containers (eg. vector).
2016-07-02 14:05:14 +02:00
Sébastien Rombauts
4e7c12f629 Add VariadicBind.h from PR #85 to CMake for Visual Studio
+ fix style issues (cpplint)
2016-07-02 14:04:39 +02:00
Sébastien Rombauts
b913932be2 Add a unit test for transactions
+ a few small minor new assert in other tests
2016-06-28 13:17:33 +02:00
Sébastien Rombauts
90699f95ea Cleanup post merge request #84 : one more exception constructor 2016-06-27 11:34:25 +02:00
Paul Dreik
4a92dde562 dont include std headers inside our own namespace 2016-06-15 20:39:51 +02:00
Paul Dreik
3022d50b38 initial submission of variadic template for bind
tested with
CXXFLAGS="-std=c++14" cmake
with gcc 5.3.1.
2016-06-04 22:06:38 +02:00
Douglas Heriot
2cd31179f4 Use new Exception constructors everywhere appropriate.
Fix compiling with C++11.
Added public assessor methods to Exception class.
Added more Exception constructors as needed.
2016-05-26 12:34:14 +10:00
Douglas Heriot
832e89440f Better exception messages when statements fail
Added new constructor to Exception that takes sqlite3* pointer, allowing for getting more information out. Makes it much easier to debug syntax errors in prepared statements, for example.
2016-05-26 00:34:34 +10:00
Sébastien Rombauts
2210b30b52 Update sqlite3 from v3.9.2 to 3.10.2 (2016-01-20) and update version to 1.3.1 2016-02-10 11:45:22 +01:00
Sébastien Rombauts
c53d885393 Update copyright notice to 2016 2016-02-10 10:27:47 +01:00
Sébastien Rombauts
b7b440de5d Fix #73 Wrong exception thrown by Database constructor
- switched from sqlite3_errmsg() to sqlite3_errstr() where applicable
2015-11-10 18:32:24 +01:00
Sébastien Rombauts
8f28c4c58f Update version to 1.3.0 with new Backup class 2015-11-01 21:53:26 +01:00