Pgsql lib add some convenience routines

This commit is contained in:
eelke 2024-04-13 09:09:54 +02:00
parent 39927bbadf
commit 80f751aeea
4 changed files with 16 additions and 3 deletions

View file

@ -109,6 +109,11 @@ Result Connection::queryParam(const char * command, const Params &params)
return Result(result); return Result(result);
} }
Result Connection::queryParam(const std::string &command, const Params &params)
{
return queryParam(command.c_str(), params);
}
Result Connection::queryParam(const QString &command, const Params &params) Result Connection::queryParam(const QString &command, const Params &params)
{ {
return queryParam(command.toUtf8().data(), params); return queryParam(command.toUtf8().data(), params);

View file

@ -83,6 +83,7 @@ namespace Pgsql {
} }
Result queryParam(const char * command, const Params &params); Result queryParam(const char * command, const Params &params);
Result queryParam(const std::string &command, const Params &params);
Result queryParam(const QString &command, const Params &params); Result queryParam(const QString &command, const Params &params);
void sendQuery(const char * query); void sendQuery(const char * query);

View file

@ -84,6 +84,12 @@ Param Params::add(const char *data, Oid oid)
return addText(p, oid); return addText(p, oid);
} }
Param Params::add(int v, Oid oid)
{
std::string s = std::format("{:d}", v);
return add(s.c_str(), oid);
}
template <typename T, typename U> template <typename T, typename U>
void concatContainers(T &d, const U& s) void concatContainers(T &d, const U& s)
{ {

View file

@ -37,6 +37,7 @@ namespace Pgsql {
Param add(const QString &s, Oid oid=varchar_oid); Param add(const QString &s, Oid oid=varchar_oid);
Param add(const char *data, Oid oid=varchar_oid); Param add(const char *data, Oid oid=varchar_oid);
Param add(int v, Oid oid=int4_oid);
Param add(std::optional<std::string> s, Oid oid=varchar_oid) Param add(std::optional<std::string> s, Oid oid=varchar_oid)
{ {
return add(s ? s->c_str() : nullptr, oid); return add(s ? s->c_str() : nullptr, oid);