0
0
mirror of https://github.com/rbock/sqlpp11.git synced 2024-11-16 12:51:13 +08:00
Commit Graph

877 Commits

Author SHA1 Message Date
Roland Bock
bde010351d Fix missing inline attributes for mysql connector
Changed mysql usage tests to be linked into one executable.
This provokes multiple definition errors for non-inlined free
functions.
2021-10-11 09:04:57 +02:00
Roland Bock
caee00e849 Fix missing inline attributes for sqlite3 connector
Changed sqlite3 usage tests to be linked into one executable.
This provokes multiple definition errors for non-inlined free
functions.
Also ran clang-format on the changed headers.
2021-10-11 08:37:14 +02:00
Roland Bock
a3c2b186fb Remove same-name check for result columns
The compiler actually does a much better job at telling you if two
result columns have the same name as soon as you are trying to use
them.
In contrast to the static_assert, the compiler will even say which
name is ambiguous.
2021-10-03 09:35:11 +02:00
Roland Bock
136b533fcf Added shift left and shift right operators. 2021-09-04 13:40:03 +02:00
Roland Bock
24a0734245 Drop copy_tuple_arg.h
Transfer the required bits to select_column_list.h
2021-09-04 12:34:11 +02:00
Roland Bock
1e2fff0ca9 Remove obsolete all_of_t
This was a wrapper used for the now-removed multi_column.
2021-09-04 11:04:51 +02:00
Roland Bock
f6bbac09e1 Remove superfluous include 2021-08-25 08:06:06 +02:00
Roland Bock
64aba48cb9 Make sqlite3 connector header-only 2021-08-22 12:44:34 +02:00
Roland Bock
660e3bd1b6 Make mysql connector header-only 2021-08-15 16:51:27 +02:00
Roland Bock
1d57d28994 Add order_by and limit for mysql remove and update
Thanks to ZerQAQ for suggesting this on github.
2021-08-14 10:56:45 +02:00
Roland Bock
5e16f32ed3 Moved mysql/mariadb connector over here. 2021-08-01 21:49:16 +02:00
Roland Bock
2e683a4b69 Moved sqlite3 over here. 2021-08-01 20:37:36 +02:00
Roland Bock
d0a8ea21af Cleanup some warning and includes 2021-08-01 19:33:53 +02:00
Roland Bock
68021772c2 Finished replacing serializer_t 2021-08-01 15:09:43 +02:00
Roland Bock
2cab1fa681 Next step in replacing serializer_t 2021-08-01 10:01:32 +02:00
Roland Bock
61116f89c5 Started to replace serializer_t 2021-07-31 20:00:42 +02:00
Roland Bock
cf87fbd68e Remove variations of serialization from interpretable
I am not even sure any more what this was intended for?
Maybe for the STL connector?
Anyways, not really needed.
2021-07-30 21:44:57 +02:00
Roland Bock
34a8f34821 Remove multi_column.
While a nice feature in theory, this was extremely rarely used
and added quite a bit of complexity to the code.
2021-07-30 21:05:36 +02:00
Roland Bock
d68744c432 Add is_equal_or_null(col, some_value_or_null)
This replaces the former implicit tvin logic with an explicit function.
2021-07-25 15:22:12 +02:00
Roland Bock
135db9397b Remove _is_trivial from *_operand 2021-07-13 15:16:36 +02:00
Roland Bock
93b0093fb5 Remove rhs_wrap (was required for tvin only) 2021-07-11 13:54:18 +02:00
Roland Bock
db0295a9d0 Remove tvin
This was a special feature for a project I was working on long ago.
It provided implicit behavior for trivial value (0 or "") which were
supposed to be interpreted as NULL.
They led to `operator==` potentially being serialized as 'IS NULL'.

It makes more sense to introduce explicit helpers, e.g.

 - equal_or_is_null(col, optional)
 - not_equal_or_is_not_null(col, optional)
2021-07-11 12:47:13 +02:00
Roland Bock
35c2b9ec04 Add missing include (#368) 2021-06-13 07:55:36 +02:00
byronhe
739b3db69c
Update connection_pool.h (#363) 2021-04-24 13:17:01 +02:00
Roland Bock
9203e3818f Remove null_is_trivial_value
Unless you have null_is_trivial_value or trivial_value_is_null somewhere in your code, this should not affect you.
2020-09-29 08:42:37 +02:00
Roland Bock
085713d4d3 Merge branch 'release/0.60' 2020-08-23 07:45:17 +02:00
Daniel Evers
e3ab5e5d0b
fixed #342: ambiguous comparison operators (c++20) (#343)
* fixed #342: ambiguous comparison operators (c++20)

* issue #342: added reference to clang bug ticket
2020-07-09 07:10:47 +02:00
MacDue
d1b34b6098
Add support for parameterized_verbatim (#341)
* Add support for parameterized_verbatim

Co-authored-by: MacDue <macdue@dueutil.tech>
2020-06-23 09:07:38 +02:00
faizol
23cb8f4c86 changed header to use stddef.h 2020-05-06 06:23:24 +02:00
faizol
b336346467 changed type_set.h to use cstddef so that size_t would be consistent across the library 2020-05-06 06:23:24 +02:00
faizol
cd20805b3e update for gcc10 compilation 2020-05-06 06:23:24 +02:00
MacDue
73df6df867 Make connection pool useable 2020-02-15 08:17:37 +01:00
MacDue
a51b6da3bd
Minimal over() implementation for aggregate functions (#316)
* Minimal over() implementation for aggregate functions

* auto_alias support for over()

* add missing typename

* Test .over() serialization

* Add missing return to test

* Fix testing over auto alias

Co-authored-by: Ben Maxwell <42680490+MaciumDue@users.noreply.github.com>
2020-02-15 07:54:22 +01:00
rbock
bb77cc1459 Fix missing space for operator- 2019-10-09 07:25:24 +02:00
rbock
5b2b175b21 Remove aggregate attribute from trim() 2019-08-28 09:42:48 +02:00
rbock
7f29a0b126 Fix expressions for unsigned integral as suggested by @fraillt 2019-08-20 18:32:16 +02:00
rbock
43ec2343c3 Fix serialization of empty dynamic_where
It was serialized with a dummy expression, which turned out to be
problematic for some vendors, see #282
2019-08-20 10:31:54 +02:00
rbock
daa672e6f0 Fix joins with CTEs 2019-05-25 14:04:44 +02:00
rbock
c729387ab6 Allow INSERT INTO from SELECT 2019-04-11 11:30:25 +02:00
rbock
b27406a87e Make implicit array to pointer decay explicit 2019-03-22 05:40:03 +01:00
rbock
6f39293a69 Maybe make MSVC happy again...
Thanks, @juandent for the change suggestion
2019-03-19 06:38:01 +01:00
rbock
d1b8bde8f1 Cleanup bogus return statements 2019-02-27 13:53:28 +01:00
Daniel Evers
ac3a8290ff support for std::string_view when using C++17 2019-02-02 11:00:59 +01:00
Egor Pugin
9de56a748c Add explicit greater condition. 2018-12-06 20:19:19 +01:00
fjkfwz
da5cf192e9 Fix blob field display 2018-10-28 07:33:25 +01:00
Sylvain Joubert
114b9ab77a Add support of value_or_null in multi-insert 2018-08-13 21:31:09 +02:00
Dirk Vanden Boer
6a45d058de Fixed transaction_t move constructor 2018-07-05 21:45:14 +02:00
rbock
8d05e4e05e Add serializer for value_or_null 2018-06-28 19:20:09 +02:00
rbock
cc96fc44ef Formatting... 2018-06-01 09:53:39 +02:00
dcojan
49d46edab2 add missing unsigned integer types in ppgen 2018-05-13 11:16:37 +02:00
rbock
ac500e238d Fix triggering static asserts multiple operators 2018-04-28 10:15:26 +02:00
rbock
9d64a5c741 Fixed missing include 2018-04-19 07:05:17 +02:00
niXman
928282a9ef
real type support added for ppgen(part 1) 2018-04-12 13:55:16 +03:00
Philippe Daouadi
1b12fddb7a Add support for std::array blobs 2018-03-10 20:49:57 +01:00
Philippe Daouadi
7b16f03aa0 Fix blob result_type 2018-03-10 20:49:57 +01:00
rbock
2e635cc963 blob WIP 2018-03-10 20:49:57 +01:00
rbock
1e029807da Add blob data type 2018-03-10 07:45:01 +01:00
Bartosz Wieczorek
f48f1b9cf7 fixup 2018-02-19 12:38:23 +01:00
cszawisza
ee3f90d13a make old GCC happy 2018-02-19 12:28:50 +01:00
Bartosz Wieczorek
e50ee42364 add set(tuple<...>) implementation for insert and update statements 2018-02-15 07:55:43 +01:00
Egor Pugin
f510166ac8 Load date library from date dir (since date v2.3). 2018-01-31 17:48:38 +03:00
rbock
2b1c1c1a82 not_t must not be a variadic template. 2018-01-21 10:58:19 +01:00
rbock
5b15267743 Typo, thanks @juandent 2018-01-07 08:05:30 +01:00
rbock
e49428c58c Partially reverting e1b82afbbe hoping to appease VC++ 2017-12-19 09:06:56 +01:00
JUAN DENT
91e0712e6c _can_be_null depends on the expression 2017-12-18 16:51:47 -06:00
JUAN DENT
5cb081a721 Corrected _is_aggregate_expression 2017-12-18 16:44:16 -06:00
JUAN DENT
13e1ac3a78 Added trim.h with Roland's suggestions 2017-12-18 12:38:41 -06:00
rbock
109b0af880 Add quoting for table and column names.
More reserved words have to be added to ddl2cpp
2017-11-26 19:19:26 +01:00
rbock
8ad1bb5db2 Add missing include 2017-11-25 19:00:18 +01:00
rbock
d7ef2603bc Remove superfluous return 2017-11-22 21:10:56 +01:00
rbock
3a6e4d93ec Merge branch 'develop' of https://github.com/rbock/sqlpp11 into develop 2017-11-06 21:37:36 +01:00
rbock
e1b82afbbe Use count instead of is_element_of 2017-10-29 16:39:51 +01:00
Roland Bock
1c7c0361ee Merge pull request #190 from choiip/develop
Fixed compile error when include connection_pool.h using c++11
2017-10-27 06:29:12 +02:00
Aaron Bishop
d207a26638 Removed templated variables
Also fixed tabs to spaces. Used github editor, can update later if there was a syntax error.
2017-10-23 09:10:10 -04:00
Aaron Bishop
fb84f9b4a9 Allow result_t to have a size() function if DbResult has a size() function.
size() must be const, but can be arbitrary type.
size() may be wrong after first next has been called
2017-10-21 16:09:30 -04:00
rbock
f6cb213e55 Fix without_table_check for alias expressions 2017-10-16 20:43:07 +02:00
Alex Choi
8b4408c95f fixed compile error when include connection_pool.h using c++11 2017-10-16 11:38:36 +08:00
niXman
7fa7720c87 support for date/datetime/timestamp types added for ppgen 2017-10-07 13:20:30 +03:00
rbock
8aadbd2263 Reverted logic change that led to too many warnings with gcc 2017-09-10 18:26:48 +02:00
rbock
00d10b5365 Minor cleanup thanks to clang-tidy 2017-09-10 15:54:59 +02:00
rbock
d112d714b9 clang-tidy readbility fixes 2017-09-10 15:46:54 +02:00
rbock
0d6c63ce20 Use clang-tidy modernize fixes 2017-09-10 15:45:07 +02:00
rbock
a17a78c5c2 Adhere to clang-tidy warning about boolean readability 2017-09-10 15:21:24 +02:00
rbock
63b40527ee Use clang-tidy to prevent else after return 2017-09-10 15:12:45 +02:00
rbock
6a9715b59d Use clang-tidy to wrap single-line blocks into {} 2017-09-10 15:05:34 +02:00
rbock
f4612061d7 Make portable static assert explicit 2017-09-10 15:01:14 +02:00
rbock
c09a0b5ee8 Use clang-format to explicitly mark unused parameters 2017-09-10 14:58:51 +02:00
rbock
306ce63f2f Use clang-format to add closing namespace comments 2017-09-10 14:56:51 +02:00
rbock
ac765993aa Use clang-format to streamline include guards 2017-09-10 14:55:11 +02:00
rbock
9ac0775699 Add virtual destructors for virtual base classes.
Thanks to new warnings in gcc-6.x
2017-09-10 10:13:37 +02:00
rbock
a2e7e56f70 Fix missing include. 2017-08-16 11:33:31 +02:00
Théo DELRIEU
8079d6c144 add missing <string> include in schema.h 2017-08-10 13:22:40 +02:00
rbock
307da227ac Merge branch 'release/0.50' 2017-07-16 07:52:02 +02:00
Serge Robyns
392b257694 Fixed incorrect usage of string::find 2017-07-15 15:56:13 +02:00
rbock
64498654b7 Fixed some clang warnings 2017-06-25 13:01:43 +02:00
rbock
7422cb9e3b Compile with both, MSVC 2015 and 2017
Make MSVC 2017 accept the code as well

MSVC still has problems with variadic templates...

Adjust README, do not do debug build (reduce load for appveyor)
2017-06-25 12:53:21 +02:00
Roland Bock
801428d4cf Merge pull request #171 from volka/isolation_level
Add an option to set a transaction isolation level in start_transaction
2017-06-03 11:40:51 +02:00
Volker Aßmann
ee20a8be67 Fix missing not correctly by including ciso646 2017-06-01 23:26:07 +02:00
Volker Aßmann
b51714eb48 Cleaned up start_transaction overloads 2017-06-01 23:18:15 +02:00
Volker Aßmann
c92571862d Replace "not" with "!" to fix Visual C++ issue 2017-06-01 12:47:14 +02:00
Volker Aßmann
f2ea61052e Add an option to set a transaction isolation level to the generic
transaction interface and the connecctor api
2017-05-31 22:43:57 +02:00
Roland Bock
8238853d30 Merge pull request #160 from sergeken/master
Added for update support (issue #145)
2017-04-10 12:28:30 +02:00
Serge Robyns
4ae55e238e Changed copyright message 2017-04-10 11:12:27 +02:00
Serge Robyns
62a5ec3e3e Added for update support 2017-04-09 11:17:55 +02:00
Frank Park
9f26495ced Reordered template arguments 2017-04-02 11:06:12 -04:00
Frank Park
71a234c4ba Split pool_connection to separate file, add reconnect_policy
Also expanded class template and constructor of connection_pool to allow
lazy instantiation, added helper function make_connection_pool to make
instantiation lazier.
2017-04-02 10:48:14 -04:00
Frank Park
ac88aa7656 delete unused function 2017-03-29 01:28:52 -04:00
Frank Park
e0d7d71bb3 delete old comment 2017-03-29 01:27:42 -04:00
Frank Park
30caa5d878 changed async connection to a wrapper instead of derived class 2017-03-29 01:07:15 -04:00
Frank Park
4fa79d552a Added async_connection to comply with RAII 2017-03-27 04:58:49 -04:00
Frank Park
6b36cd56f1 disable connection pooling on construction 2017-03-27 00:50:59 -04:00
Frank Park
5f0a5dd0e9 rename function 2017-03-26 21:53:09 -04:00
Frank Park
b05c968bb2 add is_connection_compatible along with some minor changes 2017-03-26 21:52:33 -04:00
Frank Park
de2204c07f add copyright notice and comment on free_connection 2017-03-25 17:01:12 -04:00
Frank Park
269a72bd93 change container to stack of unique_ptr 2017-03-25 07:14:36 -04:00
Frank Park
8048337068 fix namespace error 2017-03-25 06:01:48 -04:00
Frank Park
348e5d6489 Added a generic connection pool
Added a very basic outline of a generic connection pool. It should be
thread-safe, but still needs a lot of work.
2017-03-25 04:24:22 -04:00
rbock
dff7e408bb Added missing include. 2017-03-17 10:43:05 +01:00
rbock
c0853f7240 Appease MSVC 2017-03-16 21:33:52 +01:00
rbock
26bdaf7eae Fixed memory bug in handling text results in prepared statements. 2017-03-12 12:04:00 +01:00
rbock
862205d1bf Use assign to reduce number of copies 2017-03-12 09:58:04 +01:00
Roland Bock
33b69279d7 Merge pull request #143 from theodelrieu/develop
Enhancements to result_t::iterator
2017-03-07 10:13:48 +01:00
Théo DELRIEU
d50c65996a
add iterator_category field to result_t::iterator
default value is std::input_iterator_tag, connections should specialize
the sqlpp11::iterator_category struct defined in result.h to override
that value
2017-03-07 09:40:02 +01:00
rbock
9145a3a4ee More defensive string construction in result set. 2017-03-06 09:14:51 +01:00
Roland Bock
a55ba76c3b Merge pull request #134 from niXman/develop
ppgen reformatted
2017-02-02 15:11:59 +01:00
niXman
56099b7183 clang-format off 2017-01-31 22:44:00 +02:00
rbock
3d28a92a6d Fixed detection of NULL in text results 2017-01-28 11:35:59 +01:00
niXman
5b8b2b16b0 ppgen reformated 2017-01-16 20:59:01 +02:00
rbock
5e52a4da46 Added a few auto alias tests 2016-12-25 21:25:01 +01:00
rbock
ee6aa6e2c5 Silence warning in gcc about unused parameter 2016-12-25 14:44:26 +01:00
rbock
fa8cb7b0af Replaced field_spec_t::is_compatible function with a class template.
Also removed two stand-alone union functions which did not work anyway.

Let's see if MSVC is happy now.
2016-12-25 12:20:00 +01:00
rbock
1b9a4b1594 Replace is_compatible function with class template
MSVC choked on that function (claimed that the number of arguments was
incorrect)
2016-12-25 10:44:22 +01:00
rbock
7c20a68e0b Fixed result types for signed OP unsigned expressions. 2016-11-12 10:35:03 +01:00
rbock
ae37d063a4 Loosen union constraints a bit more 2016-10-11 16:09:49 +02:00
rbock
4dad08653a Maybe easier to grok for MSVC 2016-10-11 07:19:39 +02:00
rbock
fa0fe887b5 Slightly better comparison of row types for unions.
Needs some work for non-static versions
2016-10-10 22:25:53 +02:00
rbock
b0aa23ee87 Merge branch 'develop' of https://github.com/rbock/sqlpp11 into develop 2016-10-07 12:14:29 +02:00
rbock
3963b5065d Added missing pre-generated alias 2016-10-07 12:13:58 +02:00
Andreas Sommer
609766a9fe Allow dynamic sort order 2016-09-16 19:30:17 +02:00
rbock
c4a523b6d6 Merge branch 'release/0.43' 2016-09-13 22:04:51 +02:00
rbock
9559ad1a2a Replaced != with the standard <> 2016-09-13 21:41:00 +02:00
rbock
3d67da2373 Added missing .unconditionally() member functions for joins 2016-09-13 21:37:53 +02:00
rbock
6bdddcc343 Fix braces around sub-selects used as tables 2016-09-13 21:08:01 +02:00
Aaron Bishop
d2b52c1b49 fixed missing include for return_type_not_t 2016-09-10 15:27:22 -04:00
rbock
94a0eee117 Enforce unsigned integral values for limit and offset 2016-09-06 22:34:59 +02:00
rbock
2cafb56266 Improved a few assert wrapper names 2016-09-04 10:44:14 +02:00
rbock
83d5147cd1 Add begin/end to portable static assert to make error messages a bit shorter 2016-09-03 12:35:40 +02:00
rbock
827c8dbf61 The previous fix wasn't.
Found this via build-system tests of static asserts through MSVC.
2016-09-02 22:35:12 +02:00
rbock
d841a7d8a5 Fixed gcc ambiguity bug
See https://gcc.gnu.org/bugzilla/show_bug.cgi?id=77449
2016-09-02 11:17:30 +02:00
rbock
407718a8a4 Eliminated bad_statement
Using wrapped static asserts now as return types
2016-09-01 22:31:53 +02:00