diff options
author | Constantin Michael <constantin@codesynthesis.com> | 2011-10-27 12:22:08 +0200 |
---|---|---|
committer | Constantin Michael <constantin@codesynthesis.com> | 2011-10-27 12:22:08 +0200 |
commit | a2638eb3a49c8774f64be4986641d5f3971893c4 (patch) | |
tree | 6678c753f1c6bf60e288bea0e3c41b1b1ff89741 | |
parent | 28b7e2b218d673665fa906d0d1be2d50c8ff2d70 (diff) |
Add buffer_type member to integer image_traits to allow derivation of unsigned
-rw-r--r-- | odb/oracle/query.hxx | 4 | ||||
-rw-r--r-- | odb/oracle/traits.hxx | 4 |
2 files changed, 6 insertions, 2 deletions
diff --git a/odb/oracle/query.hxx b/odb/oracle/query.hxx index c392704..a7bacbe 100644 --- a/odb/oracle/query.hxx +++ b/odb/oracle/query.hxx @@ -1191,7 +1191,7 @@ namespace odb virtual void bind (bind_type* b) { - b->type = bind_type::integer; + b->type = image_traits<T, id_int32>::buffer_type; b->buffer = &image_; b->capacity = sizeof (image_); b->size = 0; @@ -1227,7 +1227,7 @@ namespace odb virtual void bind (bind_type* b) { - b->type = bind_type::integer; + b->type = image_traits<T, id_int64>::buffer_type; b->buffer = &image_; b->capacity = sizeof (image_); b->size = 0; diff --git a/odb/oracle/traits.hxx b/odb/oracle/traits.hxx index 7fb8bd02..bcad915 100644 --- a/odb/oracle/traits.hxx +++ b/odb/oracle/traits.hxx @@ -103,12 +103,14 @@ namespace odb template <> struct int32_image_traits<false> { + static const bind::buffer_type buffer_type = bind::integer; typedef int image_type; }; template <> struct int32_image_traits<true> { + static const bind::buffer_type buffer_type = bind::uinteger; typedef unsigned int image_type; }; @@ -125,12 +127,14 @@ namespace odb template <> struct int64_image_traits<false> { + static const bind::buffer_type buffer_type = bind::integer; typedef long long image_type; }; template <> struct int64_image_traits<true> { + static const bind::buffer_type buffer_type = bind::uinteger; typedef unsigned long long image_type; }; |