Commit Graph

183 Commits

Author SHA1 Message Date
rbock a9cfe534ef Fixed serialization of multi-row inserts 2014-01-27 12:48:24 +01:00
rbock dda4fc2586 Small fix in result row 2014-01-27 12:12:38 +01:00
rbock 471dffebc0 Updated joins and updated columns to work with sqlite3
The new behaviour is closer to the standard, I think
2014-01-27 11:47:22 +01:00
rbock d4d8429947 Added missing include directive 2014-01-26 22:58:38 +01:00
rbock 4869758e35 Renamed query -> statement 2014-01-26 22:39:44 +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
rbock f443564d62 Minor code cleanup 2014-01-24 00:31:53 +01:00
rbock 019a920739 Added a .where(bool) to choose all or no row 2014-01-22 22:53:23 +01:00
rbock 6e55f8f6cd Fixed a few bugs found during mysql tests 2014-01-22 18:35:08 +01:00
rbock abce8592e6 Added DISTINCT flag to avg and sum 2014-01-22 09:31:36 +01:00
rbock 34f6c7a2eb Added optional DISTINCT flag to count 2014-01-21 23:42:27 +01:00
rbock a22b07aa03 Added more tests (and fixes) for dynamic columns and flags 2014-01-21 09:50:58 +01:00
rbock 075e63c486 Added test for (empty) dynamic select flag list 2014-01-20 23:17:07 +01:00
rbock ee7cda0a5d Started to change the way dynamic columns and flags are specified 2014-01-20 21:26:16 +01:00
rbock 7992a82615 Some notes 2014-01-20 10:48:28 +01:00
rbock 31127812a0 Added some template aliases to ease specialization and added a few more operator overloads 2014-01-19 18:11:05 +01:00
rbock 63ac89accb Fixed some "const" bugs and a parameter_tuple bug 2014-01-18 22:40:13 +01:00
rbock 24b44fae65 Re-animated all tests 2014-01-18 20:58:51 +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 93129be748 Added missing interpreter specializations, especially for serializable 2014-01-17 09:56:35 +01:00
rbock 9826ef79e4 Added interpreters to is_null, multi_column, alias and select pseudo table 2014-01-16 22:31:43 +01:00
rbock 1c4d041b89 Cleaned up some outdated serialize functions 2014-01-15 23:05:24 +01:00
rbock afcc62fc75 Added interpreters for a bunch of functions and table aliases 2014-01-15 19:42:14 +01:00
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