summaryrefslogtreecommitdiff
path: root/odb/relational/mysql
AgeCommit message (Collapse)AuthorFilesLines
2013-02-09Update copyright yearBoris Kolpackov9-9/+9
2013-02-07Use multi-pass table creation in MySQLBoris Kolpackov1-25/+204
This deals with table creation order and circular dependencies. Unfortunately, there doesn't seem to be a way in MySQL to drop a foreign key only if it exists without resorting to stored procedures.
2013-01-24Add support for mapping char[N] to CHAR/VARCHAR database typesBoris Kolpackov2-4/+35
Also improve query support for arrays (decaying).
2013-01-14Add support for MSSQL ROWVERSIONBoris Kolpackov1-6/+6
ODB can now use ROWVERSION column as an optimistic concurrency version.
2012-12-12Add support for SQL name transformationsBoris Kolpackov2-12/+2
2012-11-21Add dynamic multi-database query supportBoris Kolpackov1-1/+1
2012-11-20Merge branch '2.1'Boris Kolpackov1-0/+6
2012-11-20Ignore polymorphic id reference when generating grow()2.1.12.1Boris Kolpackov1-0/+6
2012-10-08Ground work for multi-database supportBoris Kolpackov2-2/+3
All generated code now includes database id. The database-specific database class interface has been updated to include all the database operations. The database-specific tests now use this interface.
2012-09-04NULL handling improvementsBoris Kolpackov1-21/+23
Add support for specifying NULL-ness for types with built-in mapping. Handle Oracle [N]VARCHAR2 and SQLite FLOAT oddities using this mechanism instead of overriding it at the schema generation level. Also use the is_null argument that is passed to value_traits::init_image() to indicate whether the value can be NULL.
2012-07-27Add support for defining indexesBoris Kolpackov1-0/+30
New db pragma qualifier: index. New tests: common/index, mysql/index, pgsql/index.
2012-07-27Move indexes from model scope to table scopeBoris Kolpackov1-14/+0
Conceptually, indexes belong to tables and some databases (MySQL, MSSQL) indeed treat them as such (i.e., you can have indexes with the same name in different tables).
2012-07-10Add support for custom database type mappingBoris Kolpackov4-59/+128
New pragma qualifier, map, and specifiers: as, to, from. New tests: <database>/custom.
2012-04-27Add support for NULL pointers to objects with composite object idsBoris Kolpackov1-0/+43
2012-04-23Polymorphic inheritance supportBoris Kolpackov3-124/+15
2012-03-07Use RAII to free select statement resultsBoris Kolpackov1-0/+1
2012-02-22Add support for composite object idsBoris Kolpackov6-526/+82
New pragma id_type (member). New test: common/composite-id. The composite example has also been updated.
2012-01-29Update copyright yearBoris Kolpackov8-8/+8
2012-01-29Remove author field from file headerBoris Kolpackov8-8/+0
Too much effort to maintain.
2012-01-26Implement support for database schemaBoris Kolpackov3-9/+38
New pragma qualifier: namespace. New pragma specifier: schema. The table specifier was extended to accept a schema prefix. New option: --default- schema. The common/schema test was extended to cover the new functionality.
2012-01-20Add support for case where we don't send auto object id in INSERTBoris Kolpackov1-0/+1
2012-01-20ODB compiler implementation, traits, and types test for SQL ServerBoris Kolpackov1-14/+22
2012-01-20Reserve correct amount of memory for quoted idBoris Kolpackov1-1/+1
2012-01-20Use static variables instead of extern in unnamed namespaceBoris Kolpackov2-62/+55
2012-01-08Add support for defining composite value type as class template instantiationsBoris Kolpackov1-2/+2
2011-11-09Make sure we can use same type as both container and simple valueBoris Kolpackov4-8/+19
2011-11-01Implement support for optimistic concurrencyBoris Kolpackov1-3/+9
New pragmas: optimistic, version. New test: optimistic. New database function: reload().
2011-10-24Generate database schema from database model instead of C++ modelBoris Kolpackov4-156/+242
We now first create the so-called database model from C++ model and then use that to generate the database schema. The new approach also adds more general support for primary/foreign keys, including multi- column keys. Finally, for MySQL we now generate out-of-line foreign key definitions. Because MySQL does not support deferred constraints checking, deferred foreign keys are written commented out, for documentation.
2011-10-21Use base implementation instead of duplicating codeBoris Kolpackov1-10/+8
2011-10-21Add support for const data membersBoris Kolpackov3-28/+71
Const data members are automatically treated as readonly. New test: const-member.
2011-10-21Add support for readonly membersBoris Kolpackov1-18/+56
New pragma: readonly. New test: readonly.
2011-10-21Split 'in' binding into insert/update pair; rename 'out' to selectBoris Kolpackov1-9/+52
Also add the initial infrastructure for the readonly members support. Right now the split insert/update bindings allows us to avoid sending object id in UPDATE statements. It will also allows us to support readonly members.
2011-10-21Rename relational::context::use_as to relational::context::need_alias_asConstantin Michael1-1/+1
2011-10-21Add a context flag indicating whether AS SQL keyword should be used for aliasesConstantin Michael1-0/+1
2011-10-21Add flag to context indicating whether to generate grow codeConstantin Michael1-0/+1
2011-09-21Rework const object handlingBoris Kolpackov1-1/+1
Now objects are always loaded as non-const and the object cache in session treats all objects as non-const.
2011-09-19Rename generation_failed exception to operation_failedBoris Kolpackov2-10/+10
A more generic name is required since it is now used in both generator and processor (and in the future may be used validator).
2011-09-16Support for views; integrated partBoris Kolpackov1-1/+25
2011-09-05Support for views; native partBoris Kolpackov1-2/+5
2011-08-31Rename comp_value() predicate to composite()Boris Kolpackov3-10/+10
2011-08-31Add transient() predicateBoris Kolpackov1-1/+1
2011-08-31Cosmetic changes and cleanupsBoris Kolpackov1-1/+1
Rename some functions to have consistent names. Add object() predicate.
2011-08-28Add wrapper support for containersBoris Kolpackov2-8/+12
2011-08-28Add wrapper support for composite valuesBoris Kolpackov3-11/+56
NULL semantics for composite values is not yet supported.
2011-08-19Rework query machinery not to use '_' as primary table aliasBoris Kolpackov1-2/+2
Now we always qualify with the actual table name and use the '_' alias for situations where an object is referencing itself.
2011-07-22Add pragma for setting type's or member's default valueBoris Kolpackov1-0/+79
New pragma: default. New test: default.
2011-07-22Cosmetic changeBoris Kolpackov1-1/+1
2011-07-22Parse and store MySQL ENUM enumerator stringsBoris Kolpackov2-4/+31
2011-07-22Use quote_string() to quote enumeratorsBoris Kolpackov1-3/+1
2011-07-22Cosmetic changesBoris Kolpackov1-2/+2