diff options
Diffstat (limited to 'odb/relational/mysql')
-rw-r--r-- | odb/relational/mysql/context.cxx | 3 | ||||
-rw-r--r-- | odb/relational/mysql/context.hxx | 1 | ||||
-rw-r--r-- | odb/relational/mysql/source.cxx | 16 |
3 files changed, 17 insertions, 3 deletions
diff --git a/odb/relational/mysql/context.cxx b/odb/relational/mysql/context.cxx index 660f616..11b5290 100644 --- a/odb/relational/mysql/context.cxx +++ b/odb/relational/mysql/context.cxx @@ -72,6 +72,9 @@ namespace relational assert (current_ == 0); current_ = this; + data_->bind_vector_ = "MYSQL_BIND*"; + data_->truncated_vector_ = "my_bool*"; + // Populate the C++ type to DB type map. // for (size_t i (0); i < sizeof (type_map) / sizeof (type_map_entry); ++i) diff --git a/odb/relational/mysql/context.hxx b/odb/relational/mysql/context.hxx index 60d2905..392ec77 100644 --- a/odb/relational/mysql/context.hxx +++ b/odb/relational/mysql/context.hxx @@ -115,7 +115,6 @@ namespace relational { data (std::ostream& os): base_context::data (os) {} }; - data* data_; }; } diff --git a/odb/relational/mysql/source.cxx b/odb/relational/mysql/source.cxx index a205650..cf26082 100644 --- a/odb/relational/mysql/source.cxx +++ b/odb/relational/mysql/source.cxx @@ -265,7 +265,7 @@ namespace relational return false; ostringstream ostr; - ostr << "e[" << index_ << "UL]"; + ostr << "t[" << index_ << "UL]"; e = ostr.str (); if (var_override_.empty ()) @@ -289,7 +289,7 @@ namespace relational { os << "if (composite_value_traits< " << mi.fq_type () << " >::grow (" << endl - << "i." << mi.var << "value, e + " << index_ << "UL))" + << "i." << mi.var << "value, t + " << index_ << "UL))" << "{" << "grew = true;" << "}"; @@ -894,6 +894,18 @@ namespace relational member_database_type_id member_database_type_id_; }; entry<init_value_member> init_value_member_; + + struct class_: relational::class_, context + { + class_ (base const& x): base (x) {} + + virtual void + init_auto_id (semantics::data_member&, string const& im) + { + os << im << "value = 0;"; + } + }; + entry<class_> class_entry_; } } } |