diff options
author | Boris Kolpackov <boris@codesynthesis.com> | 2012-07-10 15:17:12 +0200 |
---|---|---|
committer | Boris Kolpackov <boris@codesynthesis.com> | 2012-07-10 15:17:12 +0200 |
commit | f3f9389365a03603c6f9bcc4d502ff4049c72fe2 (patch) | |
tree | ef7bfa4d1c2791e5bc3365649552b12c6820a1d8 /odb/mssql/query.txx | |
parent | 7ed3669ac5c5efb5cc05ee777ed0ca1f52f0e69d (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/mssql/query.txx')
-rw-r--r-- | odb/mssql/query.txx | 33 |
1 files changed, 17 insertions, 16 deletions
diff --git a/odb/mssql/query.txx b/odb/mssql/query.txx index a86c039..522059a 100644 --- a/odb/mssql/query.txx +++ b/odb/mssql/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; |