summaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
2011-10-31Add missing closing tagBoris Kolpackov1-1/+1
2011-10-28Implement returning of auto id using RETURNING clause in PostgreSQLBoris Kolpackov1-0/+12
Before we used a separate SELECT lastval() query which was both inefficient and error-prone in cases where INSERT may cause triggers to override the last value.
2011-10-27Add support for persistent classes without object idsBoris Kolpackov10-284/+522
New pragma id (object). New test: common/no-id.
2011-10-27Use default behaviour for Oracle default_boolConstantin Michael1-9/+0
2011-10-26Do not use TRUE and FALSE boolean literals in OracleConstantin Michael1-1/+1
2011-10-26Output DEFAULT clause before NULL specification when generating schemaConstantin Michael1-3/+4
Oracle requires that the DEFAULT clause appear before any column contraints are specified when creating a table.
2011-10-26Disable result caching in OracleConstantin Michael1-0/+14
2011-10-24Mention MySQL foreign key constraint limitationsBoris Kolpackov1-0/+22
2011-10-24Generate database schema from database model instead of C++ modelBoris Kolpackov58-1310/+3745
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-24Do not suppress empty lines from outputBoris Kolpackov1-15/+12
They could be added for formatting.
2011-10-24Add support for string representation of sql_tokenBoris Kolpackov2-13/+21
2011-10-21News entry for readonly members, objects, and valuesBoris Kolpackov1-0/+9
2011-10-21Documentation for readonly members, objects, and valuesBoris Kolpackov1-105/+297
2011-10-21Use base implementation instead of duplicating codeBoris Kolpackov1-10/+8
2011-10-21Add support for const data membersBoris Kolpackov29-233/+588
Const data members are automatically treated as readonly. New test: const-member.
2011-10-21Add aliases to GCC tree node to semantic graph node mapBoris Kolpackov1-1/+6
2011-10-21Add name hint to the qualifies edge (cvr-qualification)Boris Kolpackov3-0/+75
2011-10-21Implement more robust profile path parsingBoris Kolpackov1-2/+13
2011-10-21Add support for readonly membersBoris Kolpackov13-218/+663
New pragma: readonly. New test: readonly.
2011-10-21Split 'in' binding into insert/update pair; rename 'out' to selectBoris Kolpackov10-259/+598
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-21Generate auto_id constant even if id is in baseBoris Kolpackov1-0/+3
2011-10-21Add schema_file implementation to support schema file header and footer hooksConstantin Michael3-0/+49
2011-10-21Refactor persist statement hookConstantin Michael2-41/+22
2011-10-21Correct auto_id flag generationConstantin Michael1-1/+1
2011-10-21Implement Oracle identifier truncation to 30 charactersConstantin Michael2-0/+15
2011-10-21Rename relational::context::use_as to relational::context::need_alias_asConstantin Michael7-14/+14
2011-10-21Aesthetic changes and small bug fixesConstantin Michael2-4/+5
2011-10-21Add persist_stmt hook to handle generation of persist statement SQLConstantin Michael2-9/+57
ODB requires that Oracle persist statements include a RETURNING clause so that a generated auto_id column value may be returned.
2011-10-21Disable auto_id initialization hook for OracleConstantin Michael1-2/+1
This is not necessary and is more complex than originally thought due to the possibility of auto_id columns having a char* image type.
2011-10-21Update code generation to support use of SQLT_NUM OCI type instead of SQLT_VNUConstantin Michael2-3/+4
2011-10-21Correct generation of Oracle sequences and triggers for auto increment columnsConstantin Michael1-4/+12
2011-10-21Disable generation of inline foreign key constraintsConstantin Michael1-0/+5
2011-10-21Specify all VARCHAR2 and NVARCHAR2 columns as nullableConstantin Michael1-0/+13
Oracle interprets empty VARCHAR2 and NVARCHAR2 strings as NULL. As an empty string is always valid within the C++ context, VARCHAR2 and NVARCHAR2 columns are always specified as nullable.
2011-10-21Cascade constraints when dropping Oracle tablesConstantin Michael1-1/+1
2011-10-21Minimize Oracle schema_emitter implementationConstantin Michael2-15/+5
2011-10-21Use cached auto_id flag to determine presence of auto increment columnConstantin Michael2-22/+7
2011-10-21Add a context flag indicating whether AS SQL keyword should be used for aliasesConstantin Michael6-0/+10
2011-10-21Do not allocate a buffer for LOB images as connections now maintain oneConstantin Michael2-10/+6
2011-10-21Generate object traits auto id flag for all databasesConstantin Michael2-17/+3
2011-10-21Generate Oracle code using updated bind callback and context membersConstantin Michael2-7/+6
2011-10-21Initialize position context to zero prior to Oracle LOB set_image callConstantin Michael1-1/+2
2011-10-21Aesthetic changes and syntax correctionsConstantin Michael2-5/+5
2011-10-21Correct Oracle SQL type parser implementationConstantin Michael1-12/+14
2011-10-21Utilize the RAW buffer typeConstantin Michael1-1/+1
2011-10-21Generate select_statement::stream_result in Oracle sourceConstantin Michael1-0/+6
2011-10-21Add init_value_extra hook to relational source generationConstantin Michael1-5/+16
2011-10-21Specialize schema_emitter for OracleConstantin Michael1-0/+47
SQLPlus scripts are required to indicate PL/SQL block terminations with a trail '/'.
2011-10-21Allow per database specialization of schema_emitterConstantin Michael2-34/+36
2011-10-21Update init_image and init_value generation to use updated LOB traitsConstantin Michael1-2/+0
2011-10-21Use an auto_descriptor to manage a bound result LOBConstantin Michael1-1/+18