181 Commits

Author SHA1 Message Date
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
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
Sébastien Rombauts
9c15cf7c98 Merge pull request #136 from fekir/fix_stream
Ensure that operator<< correctly prints strings with embedded '\0'
2017-08-21 11:10:57 +02:00
Sébastien Rombauts
3c3b23a712 Merge pull request #134 from drivehappy/master
Warning cleanup under MSVC and Clang
2017-08-21 11:08:35 +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
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
fekir
21ead7c5a4 Ensure that operator<< correctly prints strings with embedded '\0' 2017-08-18 18:24:10 +02:00
drivehappy
d39ff3475e Fixing tab indentation to use spaces. 2017-08-03 15:36:26 -07:00
drivehappy
6adc4cd5a8 Fixing unused parameter warning under Clang. 2017-08-03 13:34:16 -07:00
drivehappy
218aca1b13 Fixing warning under MSVC. 2017-08-03 13:33:08 -07:00
Timothy Rae
400ab71fa3 Fix unused parameter warning 2017-03-31 12:22:48 +09: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
Jorrit Wronski
dbd31fb56b Fixed some compiler warnings 2016-12-23 14:57:09 +01:00
Jorrit Wronski
d26bd2cb8a Added tests for the encrypted database 2016-12-23 14:54:02 +01:00
Jorrit Wronski
498525bb26 Final modifications for cpplint and gcc 2016-12-23 14:20:54 +01:00
Jorrit Wronski
f5a25167a4 Debugging GCC build errors remotely is not fun... 2016-12-23 14:16:37 +01:00
Jorrit Wronski
a7d5ea4c2b Trying to gcc happy 2016-12-23 14:06:36 +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
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
da725ed1cf Fix compiler warning (unused variable) 2016-07-26 17:44:24 +02:00
Sébastien Rombauts
2b384d1441 Fix #94 warning: "'extern' variable has an initializer" 2016-07-26 07:39:35 +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
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
fb5508921a Move #include <sqlite3.h> from Database.h to the .cpp 2016-07-08 17:07:59 +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
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