summaryrefslogtreecommitdiff
path: root/odb/relational/model.hxx
AgeCommit message (Collapse)AuthorFilesLines
2018-05-24Update copyright yearKaren Arutyunov1-1/+1
2017-01-03Update copyright yearBoris Kolpackov1-1/+1
2015-08-24Fix inconsistent composite value member prefix derivationBoris Kolpackov1-1/+1
2015-07-15Implement SQLite incremental BLOB/TEXT I/OBoris Kolpackov1-2/+7
2015-07-03Implement nested id supportBoris Kolpackov1-4/+4
Now the 'id' specifier can optionally include the data member path to the id inside the composite value. For example: #pragma db id(first) std::pair<int, int> p; Note that one somewhat counter-intuitive aspect of this new feature is that the whole member marked with id ('p' in the above example) and not just the actual id member ('p.first' in the above example) is treated as readonly. Such nested id also cannot be automatically assigned (auto specifier).
2015-07-02C++ type mapping support for container elementsasBoris Kolpackov1-3/+3
2015-06-15Add points_to pragmaBoris Kolpackov1-25/+71
Currently does not support containers.
2015-02-06Update copyrightBoris Kolpackov1-1/+1
2015-01-22Add support for warning about SQL name truncations in OracleBoris Kolpackov1-2/+2
Also detect and issue diagnostics when such truncations lead to name conflicts.
2014-06-23Cut out pointer-to-id traversal so that we don't go into composite idsBoris Kolpackov1-0/+6
2013-09-15Diagnose change of polymorphic base, table kindBoris Kolpackov1-2/+5
2013-09-15Cleanup polymorphic base tables when dropping derived oneBoris Kolpackov1-2/+10
2013-09-12Add options to warn about hard additions and deletionsBoris Kolpackov1-0/+1
2013-09-12Make sure that soft-add/delete version is current versionBoris Kolpackov1-12/+35
2013-08-28Support for added and deleted data member pragmasBoris Kolpackov1-0/+9
2013-08-16Implement soft delete for persistent classesBoris Kolpackov1-0/+3
2013-04-26Add support for extra database info in primary keyBoris Kolpackov1-0/+6
Use that to handle Oracle sequence name and SQLite lax auto ids.
2013-04-26Add support for table options in changelog, use to handle MySQL engineBoris Kolpackov1-3/+16
2013-04-26Add --sqlite-override-null optionBoris Kolpackov1-5/+9
2013-04-10Generate embedded schema in single function instead of one per objectBoris Kolpackov1-11/+0
2013-04-10Generate add/drop foreign key migration statementsBoris Kolpackov1-4/+6
Also add the --fkeys-deferrable-mode option. General schemas generation rework.
2013-04-10Remove unnecessary includeBoris Kolpackov1-2/+0
2013-04-10Add initial support for database model serialization to XMLBoris Kolpackov1-25/+34
2013-02-10Suppress some warningsBoris Kolpackov1-0/+1
2013-02-09Update copyright yearBoris Kolpackov1-1/+1
2012-12-12Add support for SQL name transformationsBoris Kolpackov1-22/+32
2012-09-12Implement --output-name, --generate-schema-only, and --at-once optionsBoris Kolpackov1-1/+1
2012-08-01Add support for empty column names in composite value typesBoris Kolpackov1-19/+21
2012-07-27Add support for defining indexesBoris Kolpackov1-39/+177
New db pragma qualifier: index. New tests: common/index, mysql/index, pgsql/index.
2012-07-27Move indexes from model scope to table scopeBoris Kolpackov1-5/+2
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-04-27Add support for NULL pointers to objects with composite object idsBoris Kolpackov1-1/+1
2012-04-23Polymorphic inheritance supportBoris Kolpackov1-6/+12
2012-02-22Add support for composite object idsBoris Kolpackov1-135/+193
New pragma id_type (member). New test: common/composite-id. The composite example has also been updated.
2012-01-29Update copyright yearBoris Kolpackov1-1/+1
2012-01-29Remove author field from file headerBoris Kolpackov1-1/+0
Too much effort to maintain.
2012-01-26Implement support for database schemaBoris Kolpackov1-13/+13
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-08Add support for defining composite value type as class template instantiationsBoris Kolpackov1-7/+7
2011-10-24Generate database schema from database model instead of C++ modelBoris Kolpackov1-0/+528
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.