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

1383 Commits

Author SHA1 Message Date
rbock
54d45e97ae Added interpret support for remove() 2014-01-15 08:24:42 +01:00
rbock
54fa55e6a5 interpret works for in() 2014-01-15 07:38:53 +01:00
rbock
602f33726f interpreter added for update() 2014-01-15 07:22:54 +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
fa18ce5476 interpret works for insert now
Also added explicit .default_values() method
2014-01-13 23:05:48 +01:00
rbock
eb9f92543e Interpret works for parameters now
Also, paramters inherit the operators they need
2014-01-13 21:00:20 +01:00
rbock
c03ef1b0b1 interpret handles order_by(), limit() and offset() 2014-01-13 06:24:27 +01:00
rbock
f21860e5c5 Cleaned up a hack in like() 2014-01-12 16:26:47 +01:00
rbock
7fc5c34190 interpret works for group_by(), having() und .like() 2014-01-12 16:19:09 +01:00
rbock
d56d1422cd interpret works for where() 2014-01-12 16:01:38 +01:00
rbock
1d3ea8516f interpreter for from() 2014-01-12 15:45:50 +01:00
rbock
d957e8c0ae Added interpreter to select, select_flag_list, select_expression_list 2014-01-12 12:22:15 +01:00
rbock
f8b5d750fa Removed superfluous template parameter from interpreter
The Db parameter would actually have prevented different Context
overloads (or made more difficult than necessary).
2014-01-12 10:13:15 +01:00
rbock
47ae6a2e76 Continued to implement standard serializing interpreters
Everything that is interpreted also has to move out of detail namespace,
because it might have to be specialized for a database connector
2014-01-11 21:51:57 +01:00
rbock
bef7cea6a6 Started to switch from member serialize -> non-member interpret
This will allow database connectors to specialize the interpretation of
the expression tree and interpret queries in vendor specific ways where
required.
2014-01-11 00:11:47 +01:00
rbock
46b4ac349e Merge branch 'feature/prepared_statements' into develop 2014-01-10 08:18:52 +01:00
rbock
a68d6fb828 Prepared insert/update/delete now work with the mysql connector 2014-01-09 22:33:23 +01:00
rbock
121f56549b Added prepared statement support to insert, update and remove (untested yet) 2014-01-08 22:14:16 +01:00
rbock
3f519d6fce Started to add prepared statement support for insert, update and remove 2014-01-08 21:31:29 +01:00
Roland Bock
a122924d37 Accepting parameters in other parts of select now
(formerly only where and having clauses)
2014-01-08 08:02:17 +01:00
Roland Bock
e601747fca Assert that parameters are not used in dynamic elements of a query.
This will need to change in the future
2014-01-07 07:29:55 +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
409fa3baac Test with boolean and text parameters in prepared query compiles and runs
with mysql
2014-01-04 19:32:18 +01:00
Roland Bock
c140e13510 Small fix for dynamic results and a hint for positional parameters 2014-01-04 18:26:11 +01:00
Roland Bock
bbf18e4f7a Changed data type for boolean to signed char (seems to be more common for binary bindings) 2014-01-04 18:21:48 +01:00
Roland Bock
5b77bf3fea Added missing validate methods 2014-01-04 10:20:58 +01:00
Roland Bock
099250945c Successfully running the first prepared select statement including result evaluation 2014-01-03 14:27:06 +01:00
Roland Bock
6e5ee56577 prepared to detemplatify connector results 2014-01-02 20:20:58 +01:00
Roland Bock
9ca174054d Can bind results. 2014-01-02 19:05:27 +01:00
Roland Bock
1360b1d9db Turned value_type::parameter_t into a non-template 2014-01-02 13:11:19 +01:00
Roland Bock
9d0746b15c Can now bind integral parameters and execute prepared queries 2013-12-29 20:31:59 +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
3ef3faa0f4 Fixed bug in dynamic result row. 2013-12-18 08:19:50 +01:00
Roland Bock
a915bd9e50 Refactored of result and result row (clearer structure depending on connectors) 2013-12-17 22:12:13 +01:00
Roland Bock
2b43d3bc15 Added default constructor to result field types 2013-12-15 18:52:05 +01:00
Roland Bock
9597c3712c Moved result construction more towards connector.
This will make it easier to handle different formats
2013-12-15 13:02:41 +01:00
Roland Bock
51786a9f1d Added a prepared_select_t type and a prepare method for select
This is not done yet, but it indicates the way to go...
2013-11-28 11:12:44 +01:00
Roland Bock
221e20918b select now collects parameters from Where and Having 2013-11-26 23:45:31 +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
Roland Bock
db26a88031 Merge tag '0.8' into develop
Added verbatim tables.
Aligned static and dynamic method signatures.
2013-11-18 07:36:45 +01:00
Roland Bock
82c0a9849a Merge branch 'release/0.8' 2013-11-18 07:35:02 +01:00
Roland Bock
6f780a9542 Allow non-zero start values for dynamic limit and offset 2013-11-18 07:32:09 +01:00
Roland Bock
8d12d23d67 Added verbatim table 2013-11-16 23:19:37 +01:00
Roland Bock
5304e77f4a Streamlined usage of dynamic and non-dynamic method versions
from, where, having, group_py, order_by, using.

Prepared on() as well
2013-11-16 18:36:05 +01:00
Roland Bock
4b4048bd11 Unified interface for where and dynamic_where.
Compatible with previous interface.
Both where and dynamic where can now take a variable amount of
arguments. where() requires at least one argument.
2013-11-16 09:37:38 +01:00
Roland Bock
0ad689c116 Merge tag '0.7' into develop
Fixed compiler errors and warnings for clang.
Smaller memory footprint for non-dynamic cases.
2013-11-15 10:11:12 +01:00
Roland Bock
a5643cf847 Merge branch 'release/0.7' 2013-11-15 10:10:03 +01:00