rbock
277ce51fb5
Added missing file
2014-01-15 17:44:59 +01:00
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
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
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
81309ce58f
Minor cleanup
2013-11-15 10:09:42 +01:00
Roland Bock
e7c6f88d23
Remove clang warning for in() and is_null()
2013-11-15 10:01:45 +01:00
Roland Bock
6db64212b6
Prevent template constructor to overload default copy constructors
2013-11-15 10:00:48 +01:00
Roland Bock
3c5682f3ae
Use serializable_list in update and insert
2013-11-15 09:59:44 +01:00