diff options
author | Boris Kolpackov <boris@codesynthesis.com> | 2012-11-21 13:11:43 +0200 |
---|---|---|
committer | Boris Kolpackov <boris@codesynthesis.com> | 2012-11-21 13:11:43 +0200 |
commit | 9ccd928f7b3d36b7be4a8dc8d180a441c9bf55e1 (patch) | |
tree | e6f398593fdc511d260ca9464344ff4bf3e2f127 /odb/mysql/traits.hxx | |
parent | 945e65b2f5db606740e46053a4539ccc08403996 (diff) |
Add dynamic multi-database query support
Diffstat (limited to 'odb/mysql/traits.hxx')
-rw-r--r-- | odb/mysql/traits.hxx | 17 |
1 files changed, 14 insertions, 3 deletions
diff --git a/odb/mysql/traits.hxx b/odb/mysql/traits.hxx index 68ef2dd..4175829 100644 --- a/odb/mysql/traits.hxx +++ b/odb/mysql/traits.hxx @@ -420,7 +420,6 @@ namespace odb { public: typedef const char* value_type; - typedef const char* query_type; typedef details::buffer image_type; static void @@ -434,66 +433,78 @@ namespace odb struct LIBODB_MYSQL_EXPORT default_value_traits<const char*, id_string>: c_string_value_traits { + typedef const char* query_type; }; template <> struct LIBODB_MYSQL_EXPORT default_value_traits<const char*, id_decimal>: c_string_value_traits { + typedef const char* query_type; }; template <> struct LIBODB_MYSQL_EXPORT default_value_traits<const char*, id_enum>: c_string_value_traits { + typedef const char* query_type; }; template <> struct LIBODB_MYSQL_EXPORT default_value_traits<const char*, id_set>: c_string_value_traits { + typedef const char* query_type; }; template <std::size_t N> struct default_value_traits<char[N], id_string>: c_string_value_traits { + typedef char query_type[N]; }; template <std::size_t N> struct default_value_traits<const char[N], id_string>: c_string_value_traits { + typedef const char query_type[N]; }; template <std::size_t N> struct default_value_traits<char[N], id_decimal>: c_string_value_traits { + typedef char query_type[N]; }; template <std::size_t N> struct default_value_traits<const char[N], id_decimal>: c_string_value_traits { + typedef const char query_type[N]; }; template <std::size_t N> struct default_value_traits<char[N], id_enum>: c_string_value_traits { + typedef char query_type[N]; }; template <std::size_t N> struct default_value_traits<const char[N], id_enum>: c_string_value_traits { + typedef const char query_type[N]; }; template <std::size_t N> struct default_value_traits<char[N], id_set>: c_string_value_traits { + typedef char query_type[N]; }; template <std::size_t N> struct default_value_traits<const char[N], id_set>: c_string_value_traits { + typedef const char query_type[N]; }; // std::vector<char> (buffer) specialization. @@ -566,7 +577,7 @@ namespace odb { public: typedef char* value_type; - typedef const char* query_type; + typedef char query_type[N]; typedef details::buffer image_type; static void @@ -604,7 +615,7 @@ namespace odb { public: typedef unsigned char* value_type; - typedef const unsigned char* query_type; + typedef unsigned char query_type[N]; typedef details::buffer image_type; static void |