39 Q_DECLARE_PRIVATE(QOCIDriver)
41 friend class QOCICols;
42 friend class QOCIResultPrivate;
45 explicit QOCIDriver(QObject *parent =
nullptr);
46 QOCIDriver(OCIEnv *env, OCISvcCtx *ctx, QObject *parent =
nullptr);
48 bool hasFeature(DriverFeature f)
const override;
49 bool open(
const QString &db,
51 const QString &password,
54 const QString &connOpts) override;
55 void close() override;
56 QSqlResult *createResult()
const override;
57 QStringList tables(QSql::TableType)
const override;
58 QSqlRecord record(
const QString &tablename)
const override;
59 QSqlIndex primaryIndex(
const QString& tablename)
const override;
60 QString formatValue(
const QSqlField &field,
61 bool trimStrings)
const override;
62 QVariant handle()
const override;
63 QString escapeIdentifier(
const QString &identifier, IdentifierType)
const override;
64 int maximumIdentifierLength(IdentifierType type)
const override;
67 bool beginTransaction() override;
68 bool commitTransaction() override;
69 bool rollbackTransaction() override;
74 friend class QOCICols;
76 explicit QOCIResult(
const QOCIDriver * db);
77 ~QOCIResult() override;
78 bool prepare(
const QString& query) override;
80 QVariant handle()
const override;
85 bool gotoNext(ValueCache &values,
int index) override;
86 bool reset(
const QString& query) override;
88 int numRowsAffected() override;
89 QSqlRecord record()
const override;
90 QVariant lastInsertId()
const override;
91 bool execBatch(
bool arrayBind =
false) override;
92 void virtual_hook(
int id,
void *data) override;
93 bool fetchNext() override;
94 bool internal_prepare();
97 Q_DECLARE_PRIVATE(QOCIResult)