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_oci.cpp File Reference

(3e81bed3317531e3e47bed5dc8a385223c3cae1e)

#include "qsql_oci_p.h"
#include <qcoreapplication.h>
#include <qdatetime.h>
#include <qdebug.h>
#include <qlist.h>
#include <qloggingcategory.h>
#include <qmetatype.h>
#include <qshareddata.h>
#include <qsqlerror.h>
#include <qsqlfield.h>
#include <qsqlindex.h>
#include <qsqlquery.h>
#include <QtSql/private/qsqlcachedresult_p.h>
#include <QtSql/private/qsqldriver_p.h>
#include <qstringlist.h>
#include <qvariant.h>
#include <qvarlengtharray.h>
#include <QtCore/q20memory.h>
#include <oci.h>
#include <stdlib.h>
#include "moc_qsql_oci_p.cpp"
Include dependency graph for qsql_oci.cpp:

Go to the source code of this file.

Classes

class  QOCIRowId
class  QOCIDateTime
struct  TempStorage
class  QOCIDriverPrivate
class  QOCIResultPrivate
struct  OraFieldInfo
class  QOCICols
struct  QOCIBatchColumn
struct  QOCIBatchCleanupHandler

Macros

#define QOCI_DYNAMIC_CHUNK_SIZE   65535
#define QOCI_PREFETCH_MEM   10240
#define QOCI_THREADED

Typedefs

typedef QVarLengthArray< sb2, 32 > IndicatorArray
typedef QVarLengthArray< ub4, 32 > SizeArray
typedef QSharedDataPointer< QOCIRowIdQOCIRowIdPointer

Enumerations

enum  { QOCIEncoding = 2002 , QOCIEncoding = 2002 }
enum  Expression { OrExpression , AndExpression , OrExpression , AndExpression }
enum  { QOCIEncoding = 2002 , QOCIEncoding = 2002 }
enum  Expression { OrExpression , AndExpression , OrExpression , AndExpression }

Functions

static QByteArray qMakeOCINumber (const qlonglong &ll, OCIError *err)
static QByteArray qMakeOCINumber (const qulonglong &ull, OCIError *err)
static qlonglong qMakeLongLong (const char *ociNumber, OCIError *err)
static qulonglong qMakeULongLong (const char *ociNumber, OCIError *err)
static QString qOraWarn (OCIError *err, int *errorCode=0)
static void qOraWarning (const char *msg, OCIError *err)
static QSqlError qMakeError (const QString &errString, QSqlError::ErrorType type, OCIError *err)
static void qOraOutValue (QVariant &value, TempStorage &tmpStorage, OCIEnv *env, OCIError *err)
static int qOraErrorNumber (OCIError *err)
QMetaType qDecodeOCIType (const QString &ocitype, QSql::NumericalPrecisionPolicy precisionPolicy)
QMetaType qDecodeOCIType (int ocitype, QSql::NumericalPrecisionPolicy precisionPolicy)
static QSqlField qFromOraInf (const OraFieldInfo &ofi)
template<class T, int sz>
int qReadLob (T &buf, const QOCIResultPrivate *d, OCILobLocator *lob)
static void qParseOpts (const QString &options, QOCIDriverPrivate *d)
static QString make_where_clause (const QString &user, Expression e)
void qSplitTableAndOwner (const QString &tname, QString *tbl, QString *owner)

Variables

static const ub2 qOraCharset = OCI_UCS2ID

Macro Definition Documentation

◆ QOCI_DYNAMIC_CHUNK_SIZE

#define QOCI_DYNAMIC_CHUNK_SIZE   65535

Definition at line 41 of file qsql_oci.cpp.

◆ QOCI_PREFETCH_MEM

#define QOCI_PREFETCH_MEM   10240

Definition at line 42 of file qsql_oci.cpp.

◆ QOCI_THREADED

#define QOCI_THREADED

Definition at line 47 of file qsql_oci.cpp.

Typedef Documentation

◆ IndicatorArray

typedef QVarLengthArray< sb2, 32 > IndicatorArray

Definition at line 84 of file qsql_oci.cpp.

◆ QOCIRowIdPointer

Definition at line 182 of file qsql_oci.cpp.

◆ SizeArray

typedef QVarLengthArray< ub4, 32 > SizeArray

Definition at line 85 of file qsql_oci.cpp.

Enumeration Type Documentation

◆ anonymous enum [1/2]

anonymous enum
Enumerator
QOCIEncoding 
QOCIEncoding 

Definition at line 65 of file qsql_oci.cpp.

◆ anonymous enum [2/2]

anonymous enum
Enumerator
QOCIEncoding 
QOCIEncoding 

Definition at line 65 of file qsql_oci.cpp.

◆ Expression [1/2]

enum Expression
Enumerator
OrExpression 
AndExpression 
OrExpression 
AndExpression 

Definition at line 2416 of file qsql_oci.cpp.

◆ Expression [2/2]

enum Expression
Enumerator
OrExpression 
AndExpression 
OrExpression 
AndExpression 

Definition at line 2416 of file qsql_oci.cpp.

Function Documentation

◆ make_where_clause()

QString make_where_clause ( const QString & user,
Expression e )
static

Definition at line 2421 of file qsql_oci.cpp.

◆ qDecodeOCIType() [1/2]

QMetaType qDecodeOCIType ( const QString & ocitype,
QSql::NumericalPrecisionPolicy precisionPolicy )

Definition at line 608 of file qsql_oci.cpp.

◆ qDecodeOCIType() [2/2]

QMetaType qDecodeOCIType ( int ocitype,
QSql::NumericalPrecisionPolicy precisionPolicy )

Definition at line 651 of file qsql_oci.cpp.

◆ qFromOraInf()

QSqlField qFromOraInf ( const OraFieldInfo & ofi)
static

Definition at line 721 of file qsql_oci.cpp.

◆ qMakeError()

QSqlError qMakeError ( const QString & errString,
QSqlError::ErrorType type,
OCIError * err )
static

Definition at line 600 of file qsql_oci.cpp.

◆ qMakeLongLong()

qlonglong qMakeLongLong ( const char * ociNumber,
OCIError * err )
static

Definition at line 769 of file qsql_oci.cpp.

◆ qMakeOCINumber() [1/2]

QByteArray qMakeOCINumber ( const qlonglong & ll,
OCIError * err )
static

Convert qlonglong to the internal Oracle OCINumber format.

Definition at line 740 of file qsql_oci.cpp.

◆ qMakeOCINumber() [2/2]

QByteArray qMakeOCINumber ( const qulonglong & ull,
OCIError * err )
static

Convert qulonglong to the internal Oracle OCINumber format.

Definition at line 757 of file qsql_oci.cpp.

◆ qMakeULongLong()

qulonglong qMakeULongLong ( const char * ociNumber,
OCIError * err )
static

Definition at line 777 of file qsql_oci.cpp.

◆ qOraErrorNumber()

int qOraErrorNumber ( OCIError * err)
static

Definition at line 587 of file qsql_oci.cpp.

◆ qOraOutValue()

void qOraOutValue ( QVariant & value,
TempStorage & tmpStorage,
OCIEnv * env,
OCIError * err )
static

Definition at line 485 of file qsql_oci.cpp.

◆ qOraWarn()

QString qOraWarn ( OCIError * err,
int * errorCode = 0 )
static

Definition at line 563 of file qsql_oci.cpp.

◆ qOraWarning()

void qOraWarning ( const char * msg,
OCIError * err )
static

Definition at line 582 of file qsql_oci.cpp.

◆ qParseOpts()

void qParseOpts ( const QString & options,
QOCIDriverPrivate * d )
static

Definition at line 2181 of file qsql_oci.cpp.

◆ qReadLob()

template<class T, int sz>
int qReadLob ( T & buf,
const QOCIResultPrivate * d,
OCILobLocator * lob )

Definition at line 1630 of file qsql_oci.cpp.

References QOCIResultPrivate::env, QOCIEncoding, and QOCIResultPrivate::svc.

◆ qSplitTableAndOwner()

void qSplitTableAndOwner ( const QString & tname,
QString * tbl,
QString * owner )

Definition at line 2528 of file qsql_oci.cpp.

Variable Documentation

◆ qOraCharset

const ub2 qOraCharset = OCI_UCS2ID
static

Definition at line 81 of file qsql_oci.cpp.