0
0
mirror of https://github.com/rbock/sqlpp11.git synced 2024-11-16 04:47:18 +08:00
Commit Graph

209 Commits

Author SHA1 Message Date
rbock
fd054d8a5a Fixed operators += et al 2014-08-22 12:26:48 +02:00
rbock
2bd8bc9bb7 Merge branch 'release/0.25'
Conflicts:
	test_constraints/CMakeLists.txt
2014-08-21 10:57:31 +02:00
Johan
73973f0f48 Fix cygwin-gcc and cmake problems
Fixed warning in CMake
Fixed problem with tuples creation
Fixed problem of stream copy constructor usage
2014-08-20 21:58:57 +02:00
rbock
e5e97d10b6 Added alias operators to wrapped value operands 2014-08-18 21:10:58 +02:00
rbock
e21b38901b Added static_assert for required_columns in insert
This constraint had been dropped by accident when restructuring for
statement_t.
2014-08-15 17:56:13 +02:00
rbock
3484903525 Repaired insert to work with expression values again 2014-08-14 23:47:25 +02:00
rbock
1d98fb0198 Added tvin arguments for parameters 2014-08-12 22:00:59 +02:00
rbock
ad1c5f94bb Made boolean expression more usable 2014-08-12 18:48:50 +02:00
rbock
27649b3af2 Added support for default values and result fields for insert 2014-08-11 19:17:42 +02:00
rbock
a59d7ed381 Fixed bug in field index calculation for multi_fields 2014-08-09 20:46:40 +02:00
rbock
c9372eff89 Added serialization to MockDb run methods
Implicitly increased number of serialization tests.
Fixed serialization for logical_not
2014-08-04 18:24:51 +02:00
rbock
8b5fc67af6 Added generic boolean_expression 2014-08-02 09:18:01 +02:00
rbock
18dc6b1a03 Added value_or_null method/type 2014-08-01 18:21:23 +02:00
rbock
88d28d6830 Moved value types out of detail namespace 2014-07-31 08:40:13 +02:00
rbock
c88a1097c2 Added some hints 2014-07-31 08:19:00 +02:00
rbock
ff9a6ff8f0 Added missing result_field.h 2014-07-30 23:10:45 +02:00
rbock
7c45e8b83f Removed _name_t from and added alias operators to result field.
A result field really is just a value, if you insist on using it as a
select column, give it a name via an alias.
2014-07-30 22:03:11 +02:00
rbock
a62c660ad5 Added some tvin-tests 2014-07-29 18:18:57 +02:00
rbock
b1f1de8a08 Allowing result fields to be used as arguments for queries 2014-07-29 08:57:55 +02:00
rbock
159b4c7152 Fixed error in determining can_be_null for joins 2014-07-28 21:14:20 +02:00
rbock
169113c9a4 Added missing file 2014-07-28 17:11:12 +02:00
rbock
42179cbc87 Cleaned up traits a bit more 2014-07-28 07:41:59 +02:00
rbock
643aab222e Aligned structure of connector traits with other traits 2014-07-28 06:13:30 +02:00
rbock
6d851f17ff Added testability and tests for can_be_null and null_is_trivial in result entries 2014-07-27 19:40:31 +02:00
rbock
80f09dc003 Use _traits in column specs 2014-07-23 18:06:33 +02:00
rbock
d94ab56fd8 Made generated file available by default
This lowers the threshold for those without python.
2014-07-20 11:14:44 +02:00
rbock
2f20f7ef82 Renamed bind and (in)validate to indicate their usage (vendor only) 2014-06-29 11:35:51 +02:00
rbock
0f9c1dbfb2 Added check to prevent multicolumns in sub selects 2014-06-28 21:05:37 +02:00
rbock
7900cba1ca Fixed most of the compiler warnings about unused variables in test programs 2014-06-28 21:05:16 +02:00
rbock
e03366202d Fixed a bunch of warnings 2014-06-26 08:39:08 +02:00
rbock
d90b42f52b Added a minimalistic test for including sqlpp11.h 2014-06-22 16:09:19 +02:00
rbock
1d82cf7f09 Fixed a bunch of bugs that came up when integrating with mySQL again.
Thanks Matthijs!
2014-06-20 16:53:52 +02:00
rbock
04aab4d79b Removed some debug code 2014-06-20 10:43:14 +02:00
rbock
54c95db254 Experiments with some types 2014-06-18 18:22:49 +02:00
rbock
4ce8f2419b All tests compile again for clang-3.2 2014-06-14 17:57:12 +02:00
rbock
3d26f9a686 Re-animated prepared statements 2014-06-14 17:44:22 +02:00
rbock
e775e6165e Removed obsolete namespace specifier in test after removing namespace vendor 2014-06-14 10:17:21 +02:00
rbock
ca76ccbf65 Minor fix. 2014-06-14 10:15:42 +02:00
rbock
ef6c7e0c0d Removed a few obsolete "typename" 2014-06-14 07:49:43 +02:00
rbock
4d1b60d93a Cleanup
Moved check_consistency call to statement
2014-06-13 09:33:08 +02:00
rbock
f8e0e90477 Fixed serializability of statements 2014-06-09 14:06:04 +02:00
rbock
79aa358624 Added into member for insert.
Update and remove will get table lists with more than one table
2014-06-05 08:32:22 +02:00
rbock
067740d24e InterpretTest compiles again 2014-06-04 18:35:25 +02:00
rbock
d36037472f Migrated update to generic statement 2014-06-04 09:26:10 +02:00
rbock
c866f31ea5 Turned remove into a generic statement 2014-06-03 09:12:27 +02:00
rbock
8d16b6ab2d Migrated insert to generic statement 2014-06-02 23:57:21 +02:00
rbock
7e32a0a3ea Cleaned up minor as() method mess plus some oversights 2014-06-02 07:48:05 +02:00
rbock
3fb6c6c246 SelectTest compiles again 2014-06-02 06:40:22 +02:00
rbock
98bb9a7db7 Added policies into members
What a fight...
2014-05-30 12:48:51 +02:00
rbock
408e96af4a Using _member_t to have variadic named members in statements 2014-05-30 10:40:46 +02:00
rbock
a5457e93f7 Started to move statement-specific methods into the result provider classes
First method is: select_t::as()
2014-05-27 11:20:03 +02:00
rbock
45ff16600f Fixed test 2014-05-27 09:16:29 +02:00
rbock
c13d514e95 Adjusted update to be variadic 2014-05-23 21:42:27 +02:00
rbock
2a215905fd Migrated remove to being variadic 2014-05-23 20:36:13 +02:00
rbock
22e1e7c531 Migrated insert to be truly variadic 2014-05-22 22:53:08 +02:00
rbock
c4a02d931c SelectTypeTests compile again! 2014-05-20 21:22:55 +02:00
rbock
c81a7d33ae Cleanup 2014-05-20 08:50:55 +02:00
rbock
5f4a88c7ce Function tests compile again 2014-05-16 09:18:08 +02:00
rbock
1d905e1db5 Ok, the first few lines of test code compile again. 2014-05-15 23:47:16 +02:00
rbock
d342973ef4 Added check to prevent add_column to use a column name known in the static part 2014-04-22 21:41:53 +02:00
rbock
8f16ded277 Allow columns() method to use all_of_t as well 2014-04-22 21:30:31 +02:00
rbock
0ffd93108b Added a table consistency checks to several dynamic methods 2014-04-22 20:46:32 +02:00
rbock
1f3e611fdf Added table checks to add_column and added add_column_ntc 2014-04-21 11:49:26 +02:00
rbock
815c061979 Added extra_tables to select.
With this method you can indicate additional tables that might be added
via add_from(). These tables are considered in the add_column, add
where, etc methods.
2014-04-21 10:59:29 +02:00
rbock
f4ec88c83d Improved checks for selects being usable as value or table 2014-04-18 19:59:35 +02:00
rbock
68f929e041 Removed a bunch of superfluous functions.
Dispatching made some emplace_back instances obsolete.
2014-04-11 08:58:28 +02:00
rbock
db0bbd6e3f Moved select_colum_list methods to the respective classes 2014-04-09 08:50:34 +02:00
rbock
6737bf901d Added a bunch of table tests to select
And some hints regarding additional tests and how to turn them of for
subselects
2014-04-07 22:02:08 +02:00
rbock
bef4d0874b Updates copyright year 2014-03-27 16:43:36 +01:00
rbock
a38a9d6f65 Made a bunch of compile errors easier to read
Fixed a few bugs in the process, too.
Probably also created a few, need better checks for resulting
statements.
2014-03-23 20:54:44 +01:00
rbock
82dc280b1b Added executed select tests 2014-03-18 08:28:17 +01:00
rbock
6cffdb6428 Added is_trivial_value_is_null interpretation to assignment 2014-03-07 08:53:32 +01:00
rbock
67f1b09acb Added prepare_select to MockDb. 2014-02-21 09:43:23 +01:00
rbock
8c8b95d14e Added template parameter Db to result_entry 2014-02-21 07:24:07 +01:00
rbock
b7935b61d5 Added some (no-op) statement executions 2014-02-21 06:02:49 +01:00
rbock
3bbe343a77 Added a better MockDb that can execute statements
Currently all executions are no-ops, but it will be rather simple to
yield select results too (to be configured at runtime).
2014-02-20 09:24:06 +01:00
rbock
abf4bb8e9a Added serializer to interpreter
The serializer has partial specializations for all templates. It is a
good basis if the connector/database requires strings close to the
standard.

The interpreter is unspecialized (and uses a static assert to say so).
It is a good basis if the connector/database requires a different
interpretation, e.g. re-writing the expression tree.

The interpretable_t implements three methods for interpretation:
serializing with the sqlpp::serializer_context, serializing with the
database's serialization context and interpretation with the database's
interpretation context.
2014-02-18 17:45:08 +01:00
rbock
61a4797d0b Simplified syntax for multi_columns a lot
Instead of

multi_column(alias, columns...)

it is now

multi_column(columns...).as(alias)

Also, you can now write:

all_of(table).as(alias)
2014-02-13 10:07:51 +01:00
rbock
9e8979c6f0 Fixed a bunch of small errors and shorted compile error messages 2014-02-13 08:44:09 +01:00
rbock
7c928ae6d0 Added table sets to several more expressions 2014-02-10 19:55:48 +01:00
rbock
54687c5e69 Added a bunch of static asserts to prevent misuse of insert and update
There are quite a few more to be inserted
2014-02-10 17:56:16 +01:00
rbock
e4c7b5235f Added several checks for correct types in insert columns/values 2014-02-10 09:46:31 +01:00
rbock
22c43358f2 All statements back to composite design
The point is that even though the CRTP code looked nice, it was too hard
to comprehend.
2014-02-09 23:30:30 +01:00
rbock
cc76820870 Migrated insert and remove back to composite design 2014-02-09 18:14:52 +01:00
rbock
ae2f1948ac Added checks to prevent non-matching columns from being inserted 2014-02-09 15:06:42 +01:00
rbock
61ed1d9f37 Corrected inconsistency in select value_type 2014-02-08 23:48:35 +01:00
rbock
88fc0959b5 Added value type back to select 2014-02-08 22:50:26 +01:00
rbock
3c6e7cb89a Fixed a bunch of smaller migration errors 2014-02-08 22:24:05 +01:00
rbock
68750aac80 Refactored insert to use policies
Much cleaner now.
2014-02-08 21:06:23 +01:00
rbock
5b67061fca Fixed multi_column to handle all_of again 2014-02-08 17:12:40 +01:00
rbock
b82a0295cf Fixed all_of use in select 2014-02-08 16:29:21 +01:00
rbock
0a744455ec basic select methods work again
I've let go of the select(flags, columns) monster methods, these are now
separated
2014-02-07 23:43:26 +01:00
rbock
9c4832df0f Switched remove to policy based design.
A lot of sweating to figure out how to do it, but now it looks MUCH
cleaner and it is probably a lot easier to extend :-)
2014-02-07 21:25:23 +01:00
rbock
b907e3482d Using explicit call to python now, this might work on Windows even ;-) 2014-02-02 19:10:14 +01:00
rbock
28fc5900f2 Added missing overload for prepared statement parameters 2014-02-01 14:28:23 +01:00
rbock
ec2a8587d4 Added python code generator as an example 2014-01-28 20:53:22 +01:00
rbock
dfcd372611 tvin works with const char*, too 2014-01-26 15:44:44 +01:00
rbock
b0e7395f47 Using assignments in add_values now
This makes mistakes much less likely
2014-01-26 15:09:30 +01:00
rbock
5ef5259988 Added columns and add_values to insert for multi row inserts
Need to change add_values method to use assignments, though.
2014-01-26 13:24:42 +01:00
rbock
f802300685 Added sqlpp::null and sql::default_value for insert and update 2014-01-25 22:38:16 +01:00