qsql_occi.h
来自「本文件是<精通QT4编程>的配套源代码」· C头文件 代码 · 共 72 行
H
72 行
#ifndef QSQL_OCCI_H
#define QSQL_OCCI_H
#include <QtSql/qsqlresult.h>
#include <QtSql/qsqldriver.h>
#include <QtSql/private/qsqlcachedresult_p.h>
#include "occi.h"
using namespace oracle::occi;
class QOCCIResult : public QSqlCachedResult
{
friend class QOCCIDriver;
public:
QOCCIResult(const QOCCIDriver * db);
~QOCCIResult();
bool prepare(const QString& query);
bool exec();
QVariant handle() const;
protected:
bool gotoNext(ValueCache &values, int index);
bool reset (const QString& query);
int size();
int numRowsAffected();
QSqlRecord record() const;
QVariant lastInsertId() const;
void virtual_hook(int id, void *data);
private:
Environment *env; /// OCCI环境
Connection *conn; /// OCCI连接
Statement *stmt; /// OCCI语句
};
class QOCCIDriver : public QSqlDriver
{
friend class QOCCIResultPrivate;
friend class QOCCIPrivate;
public:
explicit QOCCIDriver(QObject* parent = 0);
~QOCCIDriver();
bool hasFeature(DriverFeature f) const;
bool open(const QString & db,
const QString & user,
const QString & password,
const QString & host,
int port,
const QString& connOpts);
void close();
QSqlResult *createResult() const;
QStringList tables(QSql::TableType) const;
QSqlRecord record(const QString& tablename) const;
QSqlIndex primaryIndex(const QString& tablename) const;
QString formatValue(const QSqlField &field,
bool trimStrings) const;
QVariant handle() const;
protected:
bool beginTransaction();
bool commitTransaction();
bool rollbackTransaction();
private:
Environment *env; /// OCCI环境
Connection *conn; /// OCCI连接
Statement *stmt; /// OCCI语句
};
#endif // QSQL_OCCI_H
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?