1. 19 Jul, 2017 1 commit
    • Vadim Zeitlin's avatar
      Add get_dummy_from_{table,clause}() methods · d91c2228
      Vadim Zeitlin authored
      These functions are helpful to allow writing queries not using any
      tables portably, i.e. they basically abstract the difference between
      "select ... from dual" in Oracle and just "select ..." in almost all the
      other backends.
      d91c2228
  2. 15 Jul, 2015 1 commit
  3. 21 Apr, 2015 2 commits
    • Vadim Zeitlin's avatar
      Throw instead of truncating VARCHAR columns in Firebird backend. · bc4abd71
      Vadim Zeitlin authored
      Silently truncating the data to fit into a column is a bad idea, just don't do
      this.
      
      Also add a unit test verifying that an exception is indeed thrown if the value
      being inserted doesn't fit in the column, except for SQLite where anything
      fits and MySQL where it doesn't but just gets silently truncated by the
      database by default.
      
      Finally add a helper on_after_ddl() method to the test context class to allow
      creating tables in the common test code instead of having to always do it in
      RDBMS-specific way, even when the DDL uses completely standard SQL and the
      only difference is that Firebird needs a commit after executing it.
      
      Closes #51.
      bc4abd71
    • Vadim Zeitlin's avatar
      Use SQLT_BDOUBLE instead of SQLT_FLT in Oracle backend. · af80fd83
      Vadim Zeitlin authored
      This is recommended by Oracle documentation for performance reasons as it
      avoids conversion from the native double to Oracle format and back but, more
      importantly, avoids rounding problems and allows the "Repeated and bulk fetch"
      unit test to pass for doubles whereas it failed previously because the double
      value of 0.6*3 was written into the database as exactly 1.8, which is
      different from IEEE 754 representation.
      
      Notice that this commit assumes that Oracle 10.1+ is used during run-time if
      10.1+ headers are used for compiling SOCI. This is not true in general, but is
      hopefully good enough in practice -- and if it isn't, run-time Oracle version
      checking will need to be added later.
      af80fd83
  4. 01 Apr, 2015 2 commits
    • Vadim Zeitlin's avatar
      Provide context of the error in soci_error when possible. · 8bb66107
      Vadim Zeitlin authored
      Add soci_error::add_context() and use it in statement class to record the
      information about the query which resulted in the exception and, if
      applicable, this query parameters.
      
      This results in much better end user experience as the error messages now
      contain information allowing to diagnose which query exactly has failed
      instead of just unhelpfully saying that an error occurred.
      8bb66107
    • Vadim Zeitlin's avatar
      No real changes, just remove trailing whitespace. · e8e59781
      Vadim Zeitlin authored
      Insignificant trailing whitespace was annoying as it resulted in extra noise
      in the diffs, just get rid of it everywhere at once.
      e8e59781
  5. 11 Mar, 2015 1 commit
  6. 29 May, 2013 1 commit
    • Mateusz Loskot's avatar
      Implement new source tree layout #125 · b6d97ffa
      Mateusz Loskot authored
      First set of changes incorporating new structure of source tree.
      It also applies some of changes planned as part of buried headers feature #25
      
      Work in progress, requires testing before merging into develop branch
      b6d97ffa
  7. 13 Apr, 2013 1 commit
  8. 12 Apr, 2013 2 commits
  9. 08 Apr, 2013 1 commit
  10. 07 Apr, 2013 1 commit
  11. 06 Apr, 2013 1 commit
  12. 05 Apr, 2013 1 commit
  13. 04 Apr, 2013 2 commits
  14. 26 Mar, 2013 1 commit
  15. 07 Oct, 2011 1 commit
  16. 07 Apr, 2011 1 commit
  17. 06 Apr, 2011 1 commit
  18. 30 Apr, 2009 1 commit
  19. 01 Jul, 2008 1 commit
  20. 29 Jun, 2008 1 commit
  21. 25 Nov, 2006 1 commit
  22. 24 Nov, 2006 1 commit
  23. 29 Aug, 2006 2 commits
  24. 12 May, 2006 1 commit
  25. 14 Feb, 2006 1 commit
  26. 13 Feb, 2006 1 commit
  27. 14 Jan, 2006 1 commit
  28. 09 Dec, 2005 1 commit
  29. 13 Oct, 2005 1 commit
  30. 29 Sep, 2005 1 commit
  31. 27 Feb, 2005 1 commit
  32. 25 Feb, 2005 1 commit