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
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
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
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
KOLANICH
b98eabbe9f
Moved some functions from sources into headers.
2019-12-26 11:54:23 +03:00
KOLANICH
55d39591ac
Improved code reuse.
2019-12-26 11:54:18 +03:00
KOLANICH
5ff189a69c
Added a getIndex
method and used it.
2019-12-26 11:53:51 +03: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
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
7738989228
Update Statement.cpp
2019-05-21 17:51:56 +02:00
Sébastien Rombauts
50425142fe
Fix Statement destructor since addition of the move constructor
2019-03-05 07:15:06 +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
2cb3cb2fef
Update copyright notice
2019-03-02 15:46:53 +01:00
Sébastien Rombauts
d020c5f694
Update copyright notices to 2018
2018-01-24 11:26:38 +01: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
fekir
1fd32277c1
Remove unnecessary noexcept identifier from destructors
2017-08-21 22:01:21 +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
8275c7fb29
Move #include <sqlite3.h> from Statement.h to the .cpp
2016-07-07 08:43:32 +02:00
Sébastien Rombauts
646d25ca95
Switch from sqlite3_int64 to int64_t
2016-07-05 11:05:16 +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
0c43747065
Add unit tests for statement bindings + removed an assert() for ~Transaction()
2016-06-30 11:35:28 +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
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
3c39f1ff1c
Fix 3 new cpplint warnings about max line size
2015-05-03 23:32:40 +02:00
Sébastien Rombauts
f5e0cafa72
Minor fixes to comments and fix the build
2015-05-03 23:32:24 +02:00
Sébastien Rombauts
8797f16d12
Add Statement::getColumnName(aIndex)
...
- enable getting names befor gettings rows of result
2015-05-03 23:32:05 +02:00
Sébastien Rombauts
7fbfc29677
Fix #23 optimized Statement::getColumn() by name
...
- fix Statement::getColumn(apName) provided by #45 but was not working
instead of using #46 that conflicts with current master
- rework it by using a map of columns name as
a cache populated the first time the method is called
- add corresponding Unit Test
2015-05-03 23:28:41 +02:00
Sébastien Rombauts
29a9645314
Fix cpplint style warning introduced by #45
2015-05-03 23:28:01 +02:00
Jack.Yuan
134efd6392
Update Statement.cpp
2015-04-17 15:58:36 +08:00
Sébastien Rombauts
b84721aed3
Update copyright date in recently modified files
2015-03-08 22:53:33 +01:00