diff options
author | Dan Goodliffe <dan@randomdan.homeip.net> | 2019-02-24 14:15:34 +0000 |
---|---|---|
committer | Dan Goodliffe <dan@randomdan.homeip.net> | 2019-02-24 14:15:34 +0000 |
commit | ae321006e7ccd4db92beed2d0e525d20cee922fa (patch) | |
tree | ba1fa7f3eec684ed84092ba2098c4e6a6112715e /libodbcpp/odbc-param.cpp | |
parent | Don't rely on libdbppcore's columns (diff) | |
download | libdbpp-odbc-ae321006e7ccd4db92beed2d0e525d20cee922fa.tar.bz2 libdbpp-odbc-ae321006e7ccd4db92beed2d0e525d20cee922fa.tar.xz libdbpp-odbc-ae321006e7ccd4db92beed2d0e525d20cee922fa.zip |
Update to new libdbpp interface
Diffstat (limited to 'libodbcpp/odbc-param.cpp')
-rw-r--r-- | libodbcpp/odbc-param.cpp | 18 |
1 files changed, 16 insertions, 2 deletions
diff --git a/libodbcpp/odbc-param.cpp b/libodbcpp/odbc-param.cpp index f165d60..120703e 100644 --- a/libodbcpp/odbc-param.cpp +++ b/libodbcpp/odbc-param.cpp @@ -74,7 +74,8 @@ SIMPLEBINDER(bool, BooleanParam, B); SIMPLEBINDER(double, FloatingPointParam, F); SIMPLEBINDER(float, FloatingPointParam, F); -SIMPLEBINDER(const Glib::ustring &, GlibUstringParam, S); +SIMPLEBINDER(const Glib::ustring &, StdStringParam, S); +SIMPLEBINDER(const std::string_view &, StdStringParam, S); SIMPLEBINDER(const boost::posix_time::ptime &, TimeStampParam, T); SIMPLEBINDER(const boost::posix_time::time_duration &, IntervalParam, T); @@ -86,7 +87,7 @@ ODBC::Command::bindNull(unsigned int i) } void -ODBC::GlibUstringParam::operator=(Glib::ustring const & d) +ODBC::StdStringParam::operator=(Glib::ustring const & d) { const char * addr = data.data(); data = d; @@ -99,6 +100,19 @@ ODBC::GlibUstringParam::operator=(Glib::ustring const & d) } void +ODBC::StdStringParam::operator=(std::string_view const & d) +{ + const char * addr = data.data(); + data = d; + bindLen = d.length(); + paramBound &= (addr == data.data()); + if (!paramBound) { + paramBound = false; + bind(); + } +} + +void ODBC::TimeStampParam::operator=(const boost::posix_time::ptime & d) { data.year = d.date().year(); |