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

22 Commits

Author SHA1 Message Date
rbock
6972758931 Added extra_tables to recursive_traits 2014-05-16 09:33:48 +02:00
rbock
1d905e1db5 Ok, the first few lines of test code compile again. 2014-05-15 23:47:16 +02:00
rbock
d062c1a0d8 Started to rewrite traits and recursive traits
traits are shorter and easier to identify by using tags in a variadic
template

recursive traits can be automatically derived, which makes it much
easier to add new traits to be handed through the expression tree.
2014-05-15 08:00:03 +02:00
rbock
bef4d0874b Updates copyright year 2014-03-27 16:43:36 +01:00
rbock
c0595aa6f2 Fixed compile-error for parameter
(need to do the same for other value types, too)
2014-03-27 09:25:35 +01:00
rbock
1c95406ced Improved error messages for incorrect parameters. 2014-03-26 21:01:16 +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
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
e4c7b5235f Added several checks for correct types in insert columns/values 2014-02-10 09:46:31 +01:00
rbock
28fc5900f2 Added missing overload for prepared statement parameters 2014-02-01 14:28:23 +01:00
rbock
9c75c7b873 Removed a whole lot of unnecessary(?) perfect forwarding.
The code is much easier to read, the optimizer should take care of
pretty much everything, AND it copiles even faster without the code
being riddled with std::forward and std::decay
2014-01-30 08:43:55 +01:00
rbock
87302fa27f Make g++-4.8 compile again 2014-01-18 16:10:46 +01:00
rbock
312e735d6d Moved a bunch of things into namespace vendor
This namespace is for things the developer will not get in touch with
(normally) but the vendor might need to use for specialization of the
interpreter.

This separation is not fully completed yet, some changes will have to
follow...
2014-01-18 15:50:16 +01:00
rbock
9335a62087 Replaced implicit trivial_value_is_null tag for columns with explicit tvin method
This isn't database vendor specific, but library vendor specific, as I
used this implicit behaviour quite a lot, but it is utterly confusing
when mixed with prepared statements. Explicit is better here.
2014-01-14 22:54:07 +01:00
rbock
eb9f92543e Interpret works for parameters now
Also, paramters inherit the operators they need
2014-01-13 21:00:20 +01:00
Roland Bock
b8907df4ef Implemented parameter index determination 2014-01-05 19:25:52 +01:00
Roland Bock
51e0db883f Added static assert to prevent automatic rivial->null conversion to happen in where/having 2014-01-05 13:29:08 +01:00
Roland Bock
1360b1d9db Turned value_type::parameter_t into a non-template 2014-01-02 13:11:19 +01:00
Roland Bock
b031bda5fc Can now prepare a select (tested with mysql) 2013-12-28 22:52:54 +01:00
Roland Bock
b4baf38fab Parameters of prepared statements can be null now 2013-12-26 19:05:05 +01:00
Roland Bock
8f99a03359 Can extract parameters from expression 2013-11-22 09:42:28 +01:00
Roland Bock
1aa67c6604 Added parameter and parameter_list
parameters are to be used as placeholders in the query.
parameter lists are to be used to assign values to these parameters and
forward them to the database.
2013-11-19 19:21:58 +01:00