Qt
Internal/Contributor docs for the Qt SDK. Note: These are NOT official API docs; those are found at https://doc.qt.io/
Loading...
Searching...
No Matches
qsql_psql.cpp File Reference

(55f46569f3e9688c2a07973923bfda68aa2b0c3e)

#include "qsql_psql_p.h"
#include <qcoreapplication.h>
#include <qanystringview.h>
#include <qvariant.h>
#include <qdatetime.h>
#include <qloggingcategory.h>
#include <qregularexpression.h>
#include <qsqlerror.h>
#include <qsqlfield.h>
#include <qsqlindex.h>
#include <qsqlrecord.h>
#include <qsqlquery.h>
#include <qsocketnotifier.h>
#include <qstringlist.h>
#include <quuid.h>
#include <qlocale.h>
#include <qvarlengtharray.h>
#include <QtSql/private/qsqlresult_p.h>
#include <QtSql/private/qsqldriver_p.h>
#include <QtCore/private/qlocale_tools_p.h>
#include <queue>
#include <libpq-fe.h>
#include <pg_config.h>
#include <cmath>
#include "moc_qsql_psql_p.cpp"
Include dependency graph for qsql_psql.cpp:

Go to the source code of this file.

Classes

class  QPSQLResult
class  QPSQLDriverPrivate
class  QPSQLResultPrivate

Macros

#define QBOOLOID   16
#define QINT8OID   20
#define QINT2OID   21
#define QINT4OID   23
#define QNUMERICOID   1700
#define QFLOAT4OID   700
#define QFLOAT8OID   701
#define QABSTIMEOID   702
#define QRELTIMEOID   703
#define QDATEOID   1082
#define QTIMEOID   1083
#define QTIMETZOID   1266
#define QTIMESTAMPOID   1114
#define QTIMESTAMPTZOID   1184
#define QOIDOID   2278
#define QBYTEAOID   17
#define QREGPROCOID   24
#define QXIDOID   28
#define QCIDOID   29
#define QBITOID   1560
#define QVARBITOID   1562
#define QUUIDOID   2950
#define VARHDRSZ   4

Typedefs

typedef int StatementId

Functions

template<typename T>
void PQfreemem (T *t, int=0)
void qPQfreemem (void *buffer)
static QSqlError qMakeError (const QString &err, QSqlError::ErrorType type, const QPSQLDriverPrivate *p, PGresult *result=nullptr)
static QMetaType qDecodePSQLType (int t)
static auto qCreateParam (QSqlField &f, const QVariant &boundValue, const QPSQLDriver *driver)
static QByteArray qMakePreparedStmtId ()
static QPSQLDriver::Protocol qMakePSQLVersion (int vMaj, int vMin)
static QPSQLDriver::Protocol qFindPSQLVersion (const QString &versionString)
static QString qQuote (QString s)
static void qSplitTableName (QString &tablename, QString &schema)
template<bool forPreparedStatement>
QString autoQuoteResult (QAnyStringView str)
template<bool forPreparedStatement, class FloatType>
void assignSpecialPsqlFloatValue (FloatType val, QString *target)

Variables

static constexpr int PGRES_SINGLE_TUPLE = 9
static constexpr StatementId InvalidStatementId = 0

Macro Definition Documentation

◆ QABSTIMEOID

#define QABSTIMEOID   702

Definition at line 42 of file qsql_psql.cpp.

◆ QBITOID

#define QBITOID   1560

Definition at line 55 of file qsql_psql.cpp.

◆ QBOOLOID

#define QBOOLOID   16

Definition at line 35 of file qsql_psql.cpp.

◆ QBYTEAOID

#define QBYTEAOID   17

Definition at line 50 of file qsql_psql.cpp.

◆ QCIDOID

#define QCIDOID   29

Definition at line 53 of file qsql_psql.cpp.

◆ QDATEOID

#define QDATEOID   1082

Definition at line 44 of file qsql_psql.cpp.

◆ QFLOAT4OID

#define QFLOAT4OID   700

Definition at line 40 of file qsql_psql.cpp.

◆ QFLOAT8OID

#define QFLOAT8OID   701

Definition at line 41 of file qsql_psql.cpp.

◆ QINT2OID

#define QINT2OID   21

Definition at line 37 of file qsql_psql.cpp.

◆ QINT4OID

#define QINT4OID   23

Definition at line 38 of file qsql_psql.cpp.

◆ QINT8OID

#define QINT8OID   20

Definition at line 36 of file qsql_psql.cpp.

◆ QNUMERICOID

#define QNUMERICOID   1700

Definition at line 39 of file qsql_psql.cpp.

◆ QOIDOID

#define QOIDOID   2278

Definition at line 49 of file qsql_psql.cpp.

◆ QREGPROCOID

#define QREGPROCOID   24

Definition at line 51 of file qsql_psql.cpp.

◆ QRELTIMEOID

#define QRELTIMEOID   703

Definition at line 43 of file qsql_psql.cpp.

◆ QTIMEOID

#define QTIMEOID   1083

Definition at line 45 of file qsql_psql.cpp.

◆ QTIMESTAMPOID

#define QTIMESTAMPOID   1114

Definition at line 47 of file qsql_psql.cpp.

◆ QTIMESTAMPTZOID

#define QTIMESTAMPTZOID   1184

Definition at line 48 of file qsql_psql.cpp.

◆ QTIMETZOID

#define QTIMETZOID   1266

Definition at line 46 of file qsql_psql.cpp.

◆ QUUIDOID

#define QUUIDOID   2950

Definition at line 57 of file qsql_psql.cpp.

◆ QVARBITOID

#define QVARBITOID   1562

Definition at line 56 of file qsql_psql.cpp.

◆ QXIDOID

#define QXIDOID   28

Definition at line 52 of file qsql_psql.cpp.

◆ VARHDRSZ

#define VARHDRSZ   4

Definition at line 59 of file qsql_psql.cpp.

Typedef Documentation

◆ StatementId

typedef int StatementId

Definition at line 88 of file qsql_psql.cpp.

Function Documentation

◆ assignSpecialPsqlFloatValue()

template<bool forPreparedStatement, class FloatType>
void assignSpecialPsqlFloatValue ( FloatType val,
QString * target )
inline

Definition at line 1472 of file qsql_psql.cpp.

◆ autoQuoteResult()

template<bool forPreparedStatement>
QString autoQuoteResult ( QAnyStringView str)
inline

Definition at line 1463 of file qsql_psql.cpp.

◆ PQfreemem()

template<typename T>
void PQfreemem ( T * t,
int = 0 )
inline

Definition at line 64 of file qsql_psql.cpp.

◆ qCreateParam()

auto qCreateParam ( QSqlField & f,
const QVariant & boundValue,
const QPSQLDriver * driver )
static

Definition at line 829 of file qsql_psql.cpp.

◆ qDecodePSQLType()

QMetaType qDecodePSQLType ( int t)
static

Definition at line 340 of file qsql_psql.cpp.

◆ qFindPSQLVersion()

QPSQLDriver::Protocol qFindPSQLVersion ( const QString & versionString)
static

Definition at line 1059 of file qsql_psql.cpp.

◆ qMakeError()

QSqlError qMakeError ( const QString & err,
QSqlError::ErrorType type,
const QPSQLDriverPrivate * p,
PGresult * result = nullptr )
static

Definition at line 280 of file qsql_psql.cpp.

References QPSQLDriverPrivate::connection.

◆ qMakePreparedStmtId()

QByteArray qMakePreparedStmtId ( )
inlinestatic

Definition at line 850 of file qsql_psql.cpp.

◆ qMakePSQLVersion()

QPSQLDriver::Protocol qMakePSQLVersion ( int vMaj,
int vMin )
static

Definition at line 990 of file qsql_psql.cpp.

◆ qPQfreemem()

void qPQfreemem ( void * buffer)
inline

Definition at line 78 of file qsql_psql.cpp.

Referenced by QPSQLResult::data().

Here is the caller graph for this function:

◆ qQuote()

QString qQuote ( QString s)
static

Definition at line 1182 of file qsql_psql.cpp.

◆ qSplitTableName()

void qSplitTableName ( QString & tablename,
QString & schema )
static

Definition at line 1355 of file qsql_psql.cpp.

Variable Documentation

◆ InvalidStatementId

constexpr StatementId InvalidStatementId = 0
staticconstexpr

◆ PGRES_SINGLE_TUPLE

constexpr int PGRES_SINGLE_TUPLE = 9
staticconstexpr

Definition at line 85 of file qsql_psql.cpp.