fastdo  0.5.12
eiendb::IDBConnection结构体 参考abstract

数据库连接接口 更多...

#include <eiendb_base.hpp>

类 eiendb::IDBConnection 继承关系图:

Public 成员函数

virtual ~IDBConnection ()
 
virtual bool connect ()
 连接数据库 更多...
 
virtual bool close ()
 关闭连接 更多...
 
virtual void alive ()=0
 确保该连接有效(还活着) 更多...
 
virtual bool selectDb (winux::String const &database)
 选定要操作的数据库 更多...
 
virtual bool setLinkCharset (winux::String const &charset)
 设置连接校验字符集 更多...
 
virtual winux::ulong affectedRows ()
 受影响的行数 更多...
 
virtual bool createDb (winux::String const &database)
 创建一个库 更多...
 
virtual bool dropDb (winux::String const &database)
 删除数据库 更多...
 
virtual int errNo ()
 获得错误号 更多...
 
virtual winux::String error ()
 获得错误信息 更多...
 
virtual winux::SharedPointer< IDBResultquery (winux::String const &sql)
 查询 更多...
 
virtual winux::SharedPointer< IDBResultquery (winux::SharedPointer< IDBStatement > stmt)
 
virtual bool exec (winux::String const &sql)
 不需要数据的查询 更多...
 
virtual bool exec (winux::SharedPointer< IDBStatement > stmt)
 
virtual winux::ulong insertId ()
 获得最后一次完成记录插入时的ID值 更多...
 
virtual winux::String escape (winux::String const &str, winux::String const &addQuote="\'")
 普通文本转成SQL语句安全的文本,用做SQL语句的字符串. 更多...
 
virtual winux::String escape (winux::byte const *buf, int size, winux::String const &addQuote="\'")
 
virtual winux::SharedPointer< IDBResultlistDbs ()
 获得所有数据库的一个结果集 更多...
 
virtual winux::SharedPointer< IDBResultlistFields (winux::String const &tableName)
 获得数据库里某表所有字段的一个结果集 更多...
 
virtual winux::SharedPointer< IDBResultlistTables ()
 获得数据库里所有表的一个结果集 更多...
 
virtual winux::String tableDdl (winux::String const &tableName)
 取得一张表的DDL 更多...
 
virtual winux::String symbolQuotes (winux::String const &str)
 加入标识符的引用标记,如表名,字段名等等 更多...
 
virtual int loadSql (winux::String const &sqlText, winux::StringArray *arrSql)=0
 
virtual int loadSqlFile (winux::IFile *sqlScriptFile, winux::StringArray *arrSql)=0
 
virtual int getPrimaryKey (winux::String const &tableName, winux::StringArray *arrKeyColumn)=0
 
virtual winux::SharedPointer< IDBStatementbuildStmt (winux::String const &sql)
 构造一个语句对象 更多...
 
virtual winux::SharedPointer< IDBStatementbuildStmt (winux::String const &sql, winux::Mixed const &params)=0
 构造一个语句对象 更多...
 
virtual winux::SharedPointer< IDBStatementbuildStmt (winux::String const &sql, winux::MixedArray const &params)
 构造一个语句对象 更多...
 
virtual winux::SharedPointer< IDBStatementbuildStmt (winux::String const &sql, winux::StringMixedMap const &params)
 构造一个语句对象 更多...
 
virtual operator bool () const =0
 判断一个连接是否有效 更多...
 

详细描述

数据库连接接口

版本
1.0.0

在文件 eiendb_base.hpp61 行定义.

构造及析构函数说明

virtual eiendb::IDBConnection::~IDBConnection ( )
inlinevirtual

在文件 eiendb_base.hpp63 行定义.

成员函数说明

virtual winux::ulong eiendb::IDBConnection::affectedRows ( )
virtual

受影响的行数

前置条件
在改变数据库内容或结构之后
返回
ulong

eiendb::MySQLConnection , 以及 eiendb::SQLiteConnection 重载.

virtual void eiendb::IDBConnection::alive ( )
pure virtual

确保该连接有效(还活着)

eiendb::MySQLConnection , 以及 eiendb::SQLiteConnection 内被实现.

virtual winux::SharedPointer<IDBStatement> eiendb::IDBConnection::buildStmt ( winux::String const &  sql)
virtual

构造一个语句对象

eiendb::SQLiteConnection , 以及 eiendb::MySQLConnection 重载.

virtual winux::SharedPointer<IDBStatement> eiendb::IDBConnection::buildStmt ( winux::String const &  sql,
winux::Mixed const &  params 
)
pure virtual

构造一个语句对象

eiendb::SQLiteConnection , 以及 eiendb::MySQLConnection 内被实现.

virtual winux::SharedPointer<IDBStatement> eiendb::IDBConnection::buildStmt ( winux::String const &  sql,
winux::MixedArray const &  params 
)
virtual

构造一个语句对象

eiendb::SQLiteConnection , 以及 eiendb::MySQLConnection 重载.

virtual winux::SharedPointer<IDBStatement> eiendb::IDBConnection::buildStmt ( winux::String const &  sql,
winux::StringMixedMap const &  params 
)
virtual

构造一个语句对象

eiendb::SQLiteConnection , 以及 eiendb::MySQLConnection 重载.

virtual bool eiendb::IDBConnection::close ( )
virtual

关闭连接

eiendb::MySQLConnection , 以及 eiendb::SQLiteConnection 重载.

virtual bool eiendb::IDBConnection::connect ( )
virtual

连接数据库

eiendb::MySQLConnection , 以及 eiendb::SQLiteConnection 重载.

virtual bool eiendb::IDBConnection::createDb ( winux::String const &  database)
virtual

创建一个库

参数
databasestring 数据库名
返回
boolean

eiendb::MySQLConnection , 以及 eiendb::SQLiteConnection 重载.

virtual bool eiendb::IDBConnection::dropDb ( winux::String const &  database)
virtual

删除数据库

参数
databasestring 数据库名
返回
boolean

eiendb::MySQLConnection , 以及 eiendb::SQLiteConnection 重载.

virtual int eiendb::IDBConnection::errNo ( )
virtual

获得错误号

返回
int
返回值
0没有错误
非0出错,可用 error() 查看错误信息

eiendb::MySQLConnection , 以及 eiendb::SQLiteConnection 重载.

virtual winux::String eiendb::IDBConnection::error ( )
virtual

获得错误信息

返回
string

eiendb::MySQLConnection , 以及 eiendb::SQLiteConnection 重载.

virtual winux::String eiendb::IDBConnection::escape ( winux::String const &  str,
winux::String const &  addQuote = "\'" 
)
virtual

普通文本转成SQL语句安全的文本,用做SQL语句的字符串.

参数
strstring 需要换码的字符串
addQuotestring 表示需要在首尾加上的引号,为空则不加
返回
string

eiendb::MySQLConnection , 以及 eiendb::SQLiteConnection 重载.

virtual winux::String eiendb::IDBConnection::escape ( winux::byte const *  buf,
int  size,
winux::String const &  addQuote = "\'" 
)
virtual
virtual bool eiendb::IDBConnection::exec ( winux::String const &  sql)
virtual

不需要数据的查询

这函数可以用来执行INSERT, UPDATE, DROP等等一些不需要查询数据的操作

参数
sqlstring
返回
bool 是否成功,改变的行数可用affectedRows()取得

eiendb::SQLiteConnection , 以及 eiendb::MySQLConnection 重载.

virtual bool eiendb::IDBConnection::exec ( winux::SharedPointer< IDBStatement stmt)
virtual
virtual int eiendb::IDBConnection::getPrimaryKey ( winux::String const &  tableName,
winux::StringArray arrKeyColumn 
)
pure virtual
virtual winux::ulong eiendb::IDBConnection::insertId ( )
virtual

获得最后一次完成记录插入时的ID值

您可以用执行SQL里的LAST_INSERT_ID()代替此函数

返回
ulong

eiendb::SQLiteConnection , 以及 eiendb::MySQLConnection 重载.

virtual winux::SharedPointer<IDBResult> eiendb::IDBConnection::listDbs ( )
virtual

获得所有数据库的一个结果集

返回
IDBResult

eiendb::SQLiteConnection , 以及 eiendb::MySQLConnection 重载.

virtual winux::SharedPointer<IDBResult> eiendb::IDBConnection::listFields ( winux::String const &  tableName)
virtual

获得数据库里某表所有字段的一个结果集

参数
tableName表名
返回
IDBResult

eiendb::SQLiteConnection , 以及 eiendb::MySQLConnection 重载.

virtual winux::SharedPointer<IDBResult> eiendb::IDBConnection::listTables ( )
virtual

获得数据库里所有表的一个结果集

返回
IDBResult

eiendb::SQLiteConnection , 以及 eiendb::MySQLConnection 重载.

virtual int eiendb::IDBConnection::loadSql ( winux::String const &  sqlText,
winux::StringArray arrSql 
)
pure virtual
virtual int eiendb::IDBConnection::loadSqlFile ( winux::IFile sqlScriptFile,
winux::StringArray arrSql 
)
pure virtual
virtual eiendb::IDBConnection::operator bool ( ) const
pure virtual

判断一个连接是否有效

eiendb::SQLiteConnection , 以及 eiendb::MySQLConnection 内被实现.

virtual winux::SharedPointer<IDBResult> eiendb::IDBConnection::query ( winux::String const &  sql)
virtual

查询

参数
sqlstring
返回
IDBResult

eiendb::MySQLConnection , 以及 eiendb::SQLiteConnection 重载.

virtual winux::SharedPointer<IDBResult> eiendb::IDBConnection::query ( winux::SharedPointer< IDBStatement stmt)
virtual
virtual bool eiendb::IDBConnection::selectDb ( winux::String const &  database)
virtual

选定要操作的数据库

参数
databasestring 数据库名
返回
boolean 是否成功

eiendb::MySQLConnection , 以及 eiendb::SQLiteConnection 重载.

virtual bool eiendb::IDBConnection::setLinkCharset ( winux::String const &  charset)
virtual

设置连接校验字符集

参数
charsetstring 字符集
前置条件
连接数据库之后
返回
boolean

eiendb::MySQLConnection , 以及 eiendb::SQLiteConnection 重载.

virtual winux::String eiendb::IDBConnection::symbolQuotes ( winux::String const &  str)
virtual

加入标识符的引用标记,如表名,字段名等等

返回
string 加入左右俩标记到标识符

eiendb::SQLiteConnection , 以及 eiendb::MySQLConnection 重载.

virtual winux::String eiendb::IDBConnection::tableDdl ( winux::String const &  tableName)
virtual

取得一张表的DDL

eiendb::SQLiteConnection , 以及 eiendb::MySQLConnection 重载.


该结构体的文档由以下文件生成: