Coder Social home page Coder Social logo

Comments (4)

tt4g avatar tt4g commented on June 8, 2024

I think this is a bug because libpqxx has to send NULL to the database when std::optional<T> is std::nullopt.
However, the actual error message is "0001-00-00 BC", so I don't know where this date string came from.

Maybe the datestyle is different from what libpqxx assumes, as described in the hint "Perhaps you need a different "datestyle" setting.".
What style is set for datestyle?

from libpqxx.

jtv avatar jtv commented on June 8, 2024

@Alfrink it's important when reporting a bug to whittle it down to the minimal stand-alone reproduction. In other words, the absolute simplest but complete code that showcases the problem.

I tried reproducing the problem like this:

  pqxx::connection conn;
  pqxx::transaction tx{conn};
  tx.exec0("CREATE TEMP TABLE pqxx_dates (i integer, d date)");
  auto const null_date{std::optional<std::chrono::year_month_day>{}};
  tx.exec_params0(
    "INSERT INTO pqxx_dates(i, d) VALUES ($1, $2)", 1, null_date);
  auto const r{tx.exec1("SELECT d FROM pqxx_dates")};
  assert(r[0].is_null());

However, this code succeeded.

It looks to me more like what you're passing is not an empty optional, but something more like a zero of some kind.

from libpqxx.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.