0
0
mirror of https://github.com/rbock/sqlpp11.git synced 2024-11-15 20:31:16 +08:00
Commit Graph

400 Commits

Author SHA1 Message Date
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
136b533fcf Added shift left and shift right operators. 2021-09-04 13:40:03 +02:00
Roland Bock
0181639cb3 Add test for table alias. 2021-09-04 11:05:49 +02:00
Roland Bock
04629c1b92 Fix warning 2021-08-22 12:47:17 +02:00
Roland Bock
64aba48cb9 Make sqlite3 connector header-only 2021-08-22 12:44:34 +02:00
Roland Bock
2bb68cc443 Add time_point test for value_or_null 2021-08-22 11:39:48 +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
2c1cc8ec89 Make mysql DateTime tests a bit stricter 2021-08-14 10:27:31 +02:00
Roland Bock
25a8dfa292 Add dynamic_insert_into test. 2021-08-06 10:14:24 +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
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
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
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
4178942015 Document multi_insert for time_point columns (#367) 2021-06-13 07:55:22 +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
rbock
268c176d8a Adjust sample.sql and ddl2cpp to match Sample.h 2019-10-05 10:20:15 +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
60267ab952 Added an example for reading time point values 2019-04-18 09:02:16 +02:00
rbock
c729387ab6 Allow INSERT INTO from SELECT 2019-04-11 11:30:25 +02:00
Daniel Evers
460557c6e0 Added string_view tests and C++17 tests for travis 2019-02-02 11:00:59 +01:00
rbock
cf02a444d7 Add custom query insert example 2019-01-23 15:34:47 +01:00
rbock
7e2e1abbfc Add example for MYSQL's ON DUPLICATE KEY UPDATE 2018-12-24 17:32:16 +01:00
rbock
dd73319bcf Add boolean expression test 2018-12-07 09:42:43 +01:00
Roland Bock
1f1ec60374
Merge pull request #246 from sjoubert/test_functions_typo
Fix typos in function's tests
2018-08-14 06:46:20 +02:00
Sylvain Joubert
114b9ab77a Add support of value_or_null in multi-insert 2018-08-13 21:31:09 +02:00
Sylvain Joubert
3faa8fa8bc Fix typos in function's tests 2018-08-13 12:59:30 +02:00
rbock
cc96fc44ef Formatting... 2018-06-01 09:53:39 +02:00
dcojan
e5b9e0a4f3 add an unsigned integer field in tests/Ppgen.cpp 2018-05-13 11:17:42 +02:00
rbock
33ed5b11ac Added example for recursive CTE 2018-04-19 07:04:42 +02:00
niXman
7d8fdaa9df
real type support added for ppgen(part 2) 2018-04-12 13:56:20 +03:00
rbock
3f3cfbbd94 Add blob data type 2018-03-10 20:49:57 +01:00
rbock
1e029807da Add blob data type 2018-03-10 07:45:01 +01:00
Bartosz Wieczorek
e50ee42364 add set(tuple<...>) implementation for insert and update statements 2018-02-15 07:55:43 +01:00
rbock
3a6e4d93ec Merge branch 'develop' of https://github.com/rbock/sqlpp11 into develop 2017-11-06 21:37:36 +01:00
rbock
e921d81049 Use using in remove test 2017-11-06 21:36:52 +01:00
Roland Bock
f1c0071a35 Merge pull request #195 from Erroneous1/feature_result_size
Allow result_t to have a size() function
2017-10-25 19:18:29 +02:00
Aaron Bishop
d724909864 fixed issues with test_types/result_row.cpp 2017-10-25 11:47:57 -04:00
Aaron Bishop
1db9ccfd7c Created separate MockSizeDb
Removed size() from MockDb
2017-10-23 20:03:37 -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
f3b915cdc9 Add new example to custom_query tests 2017-10-21 19:03:01 +02:00
rbock
06cbe05b08 Add more tests for verbatim 2017-10-21 16:55:11 +02:00
rbock
f6cb213e55 Fix without_table_check for alias expressions 2017-10-16 20:43:07 +02:00
niXman
7fa7720c87 support for date/datetime/timestamp types added for ppgen 2017-10-07 13:20:30 +03:00
rbock
c09a0b5ee8 Use clang-format to explicitly mark unused parameters 2017-09-10 14:58:51 +02:00
rbock
cd778444d6 Merge branch 'release/0.49' 2017-06-04 15:58:40 +02:00
Roland Bock
a69230b930 Merge pull request #173 from volka/isolation_level
Implemented get/set_default_isolation_level() functions
2017-06-04 15:54:47 +02:00
Volker Aßmann
9d395c2bc6 Fix typo 2017-06-04 15:19:00 +02:00
Volker Aßmann
a55d986def Implemented get/set_default_isolation_level() functions to change the
transaction isolation level default per-connection
2017-06-04 13:57:41 +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
9413206bd1 Hide the "isolation_level" member of the MockDb to make it explicit that
this is only used for mock validation
2017-06-03 11:20:18 +02:00
Volker Aßmann
b51714eb48 Cleaned up start_transaction overloads 2017-06-01 23:18:15 +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
rbock
d0c6cc103a Re-insert accidentally removed test for ppgen 2017-05-10 07:44:05 +02:00
Serge Robyns
62a5ec3e3e Added for update support 2017-04-09 11:17:55 +02: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
f88efada67 Allow for "IF NOT EXISTS" in createTable in ddl 2017-03-05 19:50:55 +01:00
rbock
7c20a68e0b Fixed result types for signed OP unsigned expressions. 2016-11-12 10:35:03 +01:00
rbock
c6062116f8 Added a few more UNION tests 2016-11-01 18:38:09 +01:00
Andreas Sommer
609766a9fe Allow dynamic sort order 2016-09-16 19:30:17 +02: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
5d09b736b6 Better failure return values for union
There are still a lot of untestable static_assert, but one thing at a
time...
2016-09-01 21:57:15 +02:00
rbock
1a0f0ea0ab Everything compiles again. 2016-09-01 21:46:42 +02:00
rbock
637e0ad4d9 Better failure return types for update and remove 2016-09-01 18:31:03 +02:00
rbock
36afa04bcd Adjusted insert to use wrapped asserts as failure return 2016-09-01 12:51:04 +02:00
rbock
cf83978118 Migrated select clauses to returning wrapped asserts
This helps a lot in testing static asserts (and debuging expressions
with MSVC)
2016-09-01 12:06:40 +02:00
rbock
57797ffffa Added for_each_field function 2016-08-17 09:51:24 +02:00
rbock
d061010fc3 Merge branch 'release/0.39' 2016-06-19 11:59:28 +02:00
strangeqargo
61d0da2ec6 ddl2cpp tests 2016-06-12 22:34:26 +03:00
rbock
03ab507f69 Some formatting 2016-06-05 21:35:49 +02:00
rbock
75978ae092 Merge branch 'Erroneous1-feature/time_of_day' into develop 2016-06-05 21:29:22 +02:00
Aaron Bishop
2f1f34d0b1 fixed some expressions, added tests 2016-05-23 08:24:35 -04:00
Aaron Bishop
6bdf5ef1ee updated copyright 2016-05-23 08:16:27 -04:00
Aaron Bishop
a8fa0ddba0 reset to master, added unsigned_integral, removed time_of_day 2016-05-20 07:09:48 -04:00
Aaron Bishop
ce7b949e1b Added time_of_day data_type 2016-05-19 08:53:56 -04:00
rbock
690028fb84 Added test to prepare statement with zero parameters 2016-04-24 10:30:06 +02:00
rbock
91defe2450 MSVC update 2 already has std::chrono::floor 2016-04-17 10:45:31 +02:00
rbock
3e008a2b04 Intermediate state 2016-04-06 10:16:35 +02:00
rbock
0b8ccaa985 Added insert_set to create first custom insert 2016-03-31 07:11:41 +02:00
rbock
a8b9014fc2 Enforce having expression to consist of aggregates 2016-03-20 09:13:50 +01:00
rbock
452175b514 Removed extra_tables (use without_table_check) instead 2016-03-20 09:13:50 +01:00
rbock
201b060d24 Added explicit without_table_check function
This removes the "required" tables from an expression
2016-03-20 09:13:50 +01:00
rbock
a836e8c8d8 Simplified where() to have one argument only 2016-03-20 09:13:50 +01:00
rbock
aceede57eb Fixed outer-tables for joins, added tests 2016-03-20 09:13:49 +01:00
rbock
d15cb2a410 Added "real" cross join 2016-03-20 09:13:49 +01:00
rbock
cf5ddfde00 Added portable static asserts for joins and first static tests 2016-03-20 09:13:49 +01:00
rbock
5e96551f83 Prevent unconditional joins, and naked bool in where() or boolean expressions
- `.from(t1, t2)` produces an unconditional join if you forget to add a condition in the .where()
  sqlpp11 therefore now deprecates unconditional joins.
- more often than not, writing  something like `where(name == "doe")`, you
  meant to write `where(t.name == "doe")`. It is hard to find bugs when
  the former expression compiles because you happen to have a variable
  `name` in the current scope as well.
  sqlpp11 therefore now deprecates `.where(bool)` and disallows
  raw bool values boolean expression like `something and bool`
  wrap bools in sqlpp::value(), if you REALLY want a bool value here
2016-03-20 09:13:49 +01:00
rbock
6dcdc419c1 Merge branch 'release/0.35'
Conflicts:
	README.md
2015-12-29 11:03:17 +01:00
rbock
cda1249b69 See what MSVC says in case of an invalid conversion 2015-12-28 18:24:59 +01:00
sliser
b812ed5120 fixed appveyor build 2015-12-28 16:42:26 +03:00
sliser
761b5e53ab added msvc workaround
fixed minor bugs
2015-12-28 12:58:30 +03:00