diff options
author | Boris Kolpackov <boris@codesynthesis.com> | 2012-07-10 15:17:15 +0200 |
---|---|---|
committer | Boris Kolpackov <boris@codesynthesis.com> | 2012-07-10 15:17:15 +0200 |
commit | 304dbce8fa2a5d033870988d17709e3eae050258 (patch) | |
tree | 7ce174a99a26025480cea4bc6ee215ab1fe6c27e /odb/oracle/query.txx | |
parent | c10f6d2d60d1333df2d0907b2957ff52deb203ac (diff) |
Add support for custom database type mapping
New pragma qualifier, map, and specifiers: as, to, from. New tests:
<database>/custom.
Diffstat (limited to 'odb/oracle/query.txx')
-rw-r--r-- | odb/oracle/query.txx | 33 |
1 files changed, 17 insertions, 16 deletions
diff --git a/odb/oracle/query.txx b/odb/oracle/query.txx index dc89db1..47bf513 100644 --- a/odb/oracle/query.txx +++ b/odb/oracle/query.txx @@ -19,7 +19,8 @@ namespace odb // append (c.table (), c.column ()); append ("="); - append<bool, ID> (val_bind<bool> (true, c.prec (), c.scale ())); + append<bool, ID> (val_bind<bool> (true, c.prec (), c.scale ()), + c.conversion ()); } // query_column @@ -30,9 +31,9 @@ namespace odb { query q (table_, column_); q += "IN ("; - q.append<T, ID> (val_bind<T> (v1, prec_, scale_)); + q.append<T, ID> (val_bind<T> (v1, prec_, scale_), conversion_); q += ","; - q.append<T, ID> (val_bind<T> (v2, prec_, scale_)); + q.append<T, ID> (val_bind<T> (v2, prec_, scale_), conversion_); q += ")"; return q; } @@ -43,11 +44,11 @@ namespace odb { query q (table_, column_); q += "IN ("; - q.append<T, ID> (val_bind<T> (v1, prec_, scale_)); + q.append<T, ID> (val_bind<T> (v1, prec_, scale_), conversion_); q += ","; - q.append<T, ID> (val_bind<T> (v2, prec_, scale_)); + q.append<T, ID> (val_bind<T> (v2, prec_, scale_), conversion_); q += ","; - q.append<T, ID> (val_bind<T> (v3, prec_, scale_)); + q.append<T, ID> (val_bind<T> (v3, prec_, scale_), conversion_); q += ")"; return q; } @@ -58,13 +59,13 @@ namespace odb { query q (table_, column_); q += "IN ("; - q.append<T, ID> (val_bind<T> (v1, prec_, scale_)); + q.append<T, ID> (val_bind<T> (v1, prec_, scale_), conversion_); q += ","; - q.append<T, ID> (val_bind<T> (v2, prec_, scale_)); + q.append<T, ID> (val_bind<T> (v2, prec_, scale_), conversion_); q += ","; - q.append<T, ID> (val_bind<T> (v3, prec_, scale_)); + q.append<T, ID> (val_bind<T> (v3, prec_, scale_), conversion_); q += ","; - q.append<T, ID> (val_bind<T> (v4, prec_, scale_)); + q.append<T, ID> (val_bind<T> (v4, prec_, scale_), conversion_); q += ")"; return q; } @@ -75,15 +76,15 @@ namespace odb { query q (table_, column_); q += "IN ("; - q.append<T, ID> (val_bind<T> (v1, prec_, scale_)); + q.append<T, ID> (val_bind<T> (v1, prec_, scale_), conversion_); q += ","; - q.append<T, ID> (val_bind<T> (v2, prec_, scale_)); + q.append<T, ID> (val_bind<T> (v2, prec_, scale_), conversion_); q += ","; - q.append<T, ID> (val_bind<T> (v3, prec_, scale_)); + q.append<T, ID> (val_bind<T> (v3, prec_, scale_), conversion_); q += ","; - q.append<T, ID> (val_bind<T> (v4, prec_, scale_)); + q.append<T, ID> (val_bind<T> (v4, prec_, scale_), conversion_); q += ","; - q.append<T, ID> (val_bind<T> (v5, prec_, scale_)); + q.append<T, ID> (val_bind<T> (v5, prec_, scale_), conversion_); q += ")"; return q; } @@ -101,7 +102,7 @@ namespace odb if (i != begin) q += ","; - q.append<T, ID> (val_bind<T> (*i, prec_, scale_)); + q.append<T, ID> (val_bind<T> (*i, prec_, scale_), conversion_); } q += ")"; return q; |