FLEA_Db_Driver_Abstract类参考

继承图,类FLEA_Db_Driver_Abstract

FLEA_Db_Driver_Mysql FLEA_Db_Driver_Oracle FLEA_Db_Driver_Mysqlt

所有成员的列表。

公有成员

 FLEA_Db_Driver_Abstract ($dsn=null)
 connect ($dsn=false)
 close ()
 selectDb ($database)
 execute ($sql, $inputarr=null, $throw=true)
 qstr ($value)
 setValueByType ($value, $type)
 qtable ($tableName, $schema=null)
 qfield ($fieldName, $tableName=null, $schema=null)
 qfields ($fields, $tableName=null, $schema=null, $returnArray=false)
 nextId ($seqName= 'sdbo_seq', $startValue=1)
 createSeq ($seqName= 'sdbo_seq', $startValue=1)
 dropSeq ($seqName= 'sdbo_seq')
 insertId ()
 affectedRows ()
 fetchRow ($res)
 fetchAssoc ($res)
 freeRes ($res)
 selectLimit ($sql, $length=null, $offset=null)
 getAllWithFieldRefs ($sql, $field, &$fieldValues, &$reference)
 assemble ($sql, &$assocRowset, $mappingName, $oneToOne, $refKeyName, $limit=null)
getAll ($sql)
 getOne ($sql)
getRow ($sql)
getCol ($sql, $col=0)
getAllGroupBy ($sql, &$groupBy)
metaColumns ($table)
 metaTables ($pattern=null, $schema=null)
 dbTimeStamp ($timestamp)
 startTrans ()
 completeTrans ($commitOnNoErrors=true)
 failTrans ()
 hasFailedTrans ()
 bind ($sql, &$inputarr)
 getInsertSQL (&$row, $table, $schema=null)
 getUpdateSQL (&$row, $pk, $table, $schema=null)
 getPlaceholder (&$inputarr, $fields=null)
 getPlaceholderPair (&$inputarr, $fields=null)

公有属性

 $TRUE_VALUE = 1
 $FALSE_VALUE = 0
 $NULL_VALUE = 'NULL'
 $NEXT_ID_SQL = null
 $CREATE_SEQ_SQL = null
 $INIT_SEQ_SQL = null
 $DROP_SEQ_SQL = null
 $META_COLUMNS_SQL = null
 $PARAM_STYLE = DBO_PARAM_QM
 $HAS_INSERT_ID = false
 $HAS_AFFECTED_ROWS = false
 $HAS_TRANSACTION = false
 $HAS_SAVEPOINT = false
 $RESULT_FIELD_NAME_LOWER = false
 $dsn = null
 $conn = null
 $log = array()
 $querycount = 0
 $lasterr = null
 $lasterrcode = null
 $_insertId = null
 $_transCount = 0
 $_hasFailedQuery = false
 $_savepointStack = array()


详细描述

在文件Abstract.php45行定义。


成员函数文档

FLEA_Db_Driver_Abstract::FLEA_Db_Driver_Abstract ( dsn = null  ) 

构造函数

参数:
array $dsn

在文件Abstract.php184行定义。

参考 $dsnFLEA::getAppInf()log_message().

FLEA_Db_Driver_Abstract::connect ( dsn = false  ) 

连接数据库

参数:
array $dsn
返回:
boolean

FLEA_Db_Driver_MysqlFLEA_Db_Driver_MysqltFLEA_Db_Driver_Oracle重载。

在文件Abstract.php202行定义。

FLEA_Db_Driver_Abstract::close (  ) 

关闭数据库连接

FLEA_Db_Driver_MysqlFLEA_Db_Driver_Oracle重载。

在文件Abstract.php209行定义。

FLEA_Db_Driver_Abstract::selectDb ( database  ) 

选择要操作的数据库

参数:
string $database
返回:
boolean

FLEA_Db_Driver_MysqlFLEA_Db_Driver_Oracle重载。

在文件Abstract.php226行定义。

FLEA_Db_Driver_Abstract::execute ( sql,
inputarr = null,
throw = true 
)

执行一个查询,返回一个 resource 或者 boolean 值

参数:
string $sql
array $inputarr
boolean $throw 指示查询出错时是否抛出异常
返回:
resource|boolean

FLEA_Db_Driver_MysqlFLEA_Db_Driver_Oracle重载。

在文件Abstract.php239行定义。

参考自 assemble()completeTrans()createSeq()dropSeq()getAll()getAllGroupBy()getAllWithFieldRefs()getCol()getOne()getRow()nextId()startTrans().

FLEA_Db_Driver_Abstract::qstr ( value  ) 

转义字符串

参数:
string $value
返回:
mixed

FLEA_Db_Driver_MysqlFLEA_Db_Driver_Oracle重载。

在文件Abstract.php250行定义。

参考自 bind()getUpdateSQL().

FLEA_Db_Driver_Abstract::setValueByType ( value,
type 
)

按照指定的类型,返回值

参数:
mixed $value
string $type
返回:
mixed

C CHAR 或 VARCHAR 类型字段 X TEXT 或 CLOB 类型字段 B 二进制数据(BLOB) N 数值或者浮点数 D 日期 T TimeStamp L 逻辑布尔值 I 整数 R 自动增量或计数器

在文件Abstract.php262行定义。

参考自 FLEA_Db_Driver_Mysql::metaColumns().

FLEA_Db_Driver_Abstract::qtable ( tableName,
schema = null 
)

将数据表名字转换为完全限定名

参数:
string $tableName
string $schema
返回:
string

FLEA_Db_Driver_MysqlFLEA_Db_Driver_Oracle重载。

在文件Abstract.php295行定义。

参考自 getInsertSQL()getUpdateSQL().

FLEA_Db_Driver_Abstract::qfield ( fieldName,
tableName = null,
schema = null 
)

将字段名转换为完全限定名,避免因为字段名和数据库关键词相同导致的错误

参数:
string $fieldName
string $tableName
string $schema
返回:
string

FLEA_Db_Driver_MysqlFLEA_Db_Driver_Oracle重载。

在文件Abstract.php308行定义。

参考自 getPlaceholderPair()getUpdateSQL()qfields().

FLEA_Db_Driver_Abstract::qfields ( fields,
tableName = null,
schema = null,
returnArray = false 
)

一次性将多个字段名转换为完全限定名

参数:
string|array $fields
string $tableName
string $schema
boolean $returnArray
返回:
string

在文件Abstract.php322行定义。

参考 qfield().

参考自 getInsertSQL().

FLEA_Db_Driver_Abstract::nextId ( seqName = 'sdbo_seq',
startValue = 1 
)

为数据表产生下一个序列值

参数:
string $seqName
string $startValue
返回:
int

在文件Abstract.php343行定义。

参考 createSeq()execute()fetchRow()freeRes().

FLEA_Db_Driver_Abstract::createSeq ( seqName = 'sdbo_seq',
startValue = 1 
)

创建一个新的序列,成功返回 true,失败返回 false

参数:
string $seqName
int $startValue
返回:
boolean

在文件Abstract.php372行定义。

参考 execute().

参考自 nextId().

FLEA_Db_Driver_Abstract::dropSeq ( seqName = 'sdbo_seq'  ) 

删除一个序列

具体的实现与数据库系统有关。

参数:
string $seqName

在文件Abstract.php388行定义。

参考 execute().

FLEA_Db_Driver_Abstract::insertId (  ) 

获取最后一次 nextId 操作获得的值

返回:
mixed

在文件Abstract.php398行定义。

FLEA_Db_Driver_Abstract::affectedRows (  ) 

返回最近一次数据库操作受到影响的记录数

返回:
int

在文件Abstract.php408行定义。

FLEA_Db_Driver_Abstract::fetchRow ( res  ) 

从记录集中返回一行数据

参数:
resouce $res
返回:
array

FLEA_Db_Driver_MysqlFLEA_Db_Driver_Oracle重载。

在文件Abstract.php420行定义。

参考自 getCol()getOne()nextId().

FLEA_Db_Driver_Abstract::fetchAssoc ( res  ) 

从记录集中返回一行数据,字段名作为键名

参数:
resouce $res
返回:
array

FLEA_Db_Driver_MysqlFLEA_Db_Driver_Oracle重载。

在文件Abstract.php431行定义。

参考自 assemble()getAll()getAllGroupBy()getAllWithFieldRefs()getRow().

FLEA_Db_Driver_Abstract::freeRes ( res  ) 

释放查询句柄

参数:
resource $res
返回:
boolean

FLEA_Db_Driver_MysqlFLEA_Db_Driver_Oracle重载。

在文件Abstract.php442行定义。

参考自 assemble()getAll()getAllGroupBy()getAllWithFieldRefs()getCol()getOne()getRow()nextId().

FLEA_Db_Driver_Abstract::selectLimit ( sql,
length = null,
offset = null 
)

进行限定记录集的查询

参数:
string $sql
int $length
int $offset
返回:
resource

FLEA_Db_Driver_MysqlFLEA_Db_Driver_Oracle重载。

在文件Abstract.php455行定义。

参考自 assemble().

FLEA_Db_Driver_Abstract::getAllWithFieldRefs ( sql,
field,
&$  fieldValues,
&$  reference 
)

执行一个查询,返回查询结果记录集、指定字段的值集合以及以该字段值分组后的记录集

参数:
string|resource $sql
string $field
array $fieldValues
array $reference
返回:
array

在文件Abstract.php469行定义。

参考 execute()fetchAssoc()freeRes().

FLEA_Db_Driver_Abstract::assemble ( sql,
&$  assocRowset,
mappingName,
oneToOne,
refKeyName,
limit = null 
)

执行一个查询,并将数据按照指定字段分组后与 $assocRowset 记录集组装在一起

参数:
string|resource $sql
array $assocRowset
string $mappingName
boolean $oneToOne
string $refKeyName
mixed $limit

在文件Abstract.php499行定义。

参考 execute()fetchAssoc()freeRes()selectLimit().

& FLEA_Db_Driver_Abstract::getAll ( sql  ) 

执行一个查询,返回查询结果记录集

参数:
string|resource $sql
返回:
array

在文件Abstract.php542行定义。

参考 execute()fetchAssoc()freeRes().

FLEA_Db_Driver_Abstract::getOne ( sql  ) 

执行查询,返回第一条记录的第一个字段

参数:
string|resource $sql
返回:
mixed

在文件Abstract.php560行定义。

参考 execute()fetchRow()freeRes().

参考自 FLEA_Db_Driver_Mysql::connect().

& FLEA_Db_Driver_Abstract::getRow ( sql  ) 

执行查询,返回第一条记录

参数:
string|resource $sql
返回:
mixed

在文件Abstract.php575行定义。

参考 execute()fetchAssoc()freeRes().

& FLEA_Db_Driver_Abstract::getCol ( sql,
col = 0 
)

执行查询,返回结果集的指定列

参数:
string|resource $sql
int $col 要返回的列,0 为第一列
返回:
mixed

在文件Abstract.php591行定义。

参考 execute()fetchRow()freeRes().

& FLEA_Db_Driver_Abstract::getAllGroupBy ( sql,
&$  groupBy 
)

执行一个查询,返回分组后的查询结果记录集

$groupBy 参数如果为字符串或整数,表示结果集根据 $groupBy 参数指定的字段进行分组。 如果 $groupBy 参数为 true,则表示根据每行记录的第一个字段进行分组。

参数:
string|resource $sql
string|int|boolean $groupBy
返回:
array

在文件Abstract.php613行定义。

参考 execute()fetchAssoc()freeRes().

& FLEA_Db_Driver_Abstract::metaColumns ( table  ) 

返回指定表(或者视图)的元数据

部分代码参考 ADOdb 实现。

每个字段包含下列属性:

name: 字段名 scale: 小数位数 type: 字段类型 simpleType: 简单字段类型(与数据库无关) maxLength: 最大长度 notNull: 是否不允许保存 NULL 值 primaryKey: 是否是主键 autoIncrement: 是否是自动增量字段 binary: 是否是二进制数据 unsigned: 是否是无符号数值 hasDefault: 是否有默认值 defaultValue: 默认值

参数:
string $table
返回:
array

FLEA_Db_Driver_Mysql重载。

在文件Abstract.php660行定义。

FLEA_Db_Driver_Abstract::metaTables ( pattern = null,
schema = null 
)

获得所有数据表的名称

参数:
string $pattern
string $schema
返回:
array

FLEA_Db_Driver_Mysql重载。

在文件Abstract.php672行定义。

FLEA_Db_Driver_Abstract::dbTimeStamp ( timestamp  ) 

返回数据库可以接受的日期格式

参数:
int $timestamp

FLEA_Db_Driver_Oracle重载。

在文件Abstract.php681行定义。

FLEA_Db_Driver_Abstract::startTrans (  ) 

启动事务

在文件Abstract.php689行定义。

参考 execute().

FLEA_Db_Driver_Abstract::completeTrans ( commitOnNoErrors = true  ) 

完成事务,根据查询是否出错决定是提交事务还是回滚事务

如果 $commitOnNoErrors 参数为 true,当事务中所有查询都成功完成时,则提交事务,否则回滚事务 如果 $commitOnNoErrors 参数为 false,则强制回滚事务

参数:
$commitOnNoErrors 指示在没有错误时是否提交事务

在文件Abstract.php712行定义。

参考 execute().

FLEA_Db_Driver_Abstract::failTrans (  ) 

强制指示在调用 completeTrans() 时回滚事务

在文件Abstract.php730行定义。

FLEA_Db_Driver_Abstract::hasFailedTrans (  ) 

返回事务是否失败的状态

在文件Abstract.php738行定义。

FLEA_Db_Driver_Abstract::bind ( sql,
&$  inputarr 
)

根据 SQL 语句和提供的参数数组,生成最终的 SQL 语句

参数:
string $sql
array $inputarr
返回:
string

在文件Abstract.php751行定义。

参考 qstr().

参考自 FLEA_Db_Driver_Mysql::execute().

FLEA_Db_Driver_Abstract::getInsertSQL ( &$  row,
table,
schema = null 
)

根据包含记录内容的数组返回一条有效的 SQL 插入记录语句

参数:
array $row
string $table 要插入的数据表
string $schema
返回:
string

在文件Abstract.php772行定义。

参考 getPlaceholder()qfields()qtable().

FLEA_Db_Driver_Abstract::getUpdateSQL ( &$  row,
pk,
table,
schema = null 
)

在文件Abstract.php782行定义。

参考 getPlaceholderPair()qfield()qstr()qtable().

FLEA_Db_Driver_Abstract::getPlaceholder ( &$  inputarr,
fields = null 
)

根据驱动的参数占位符样式,返回包含参数占位符及有效数据的数组

参数:
array $inputarr
array $fields
返回:
array

在文件Abstract.php803行定义。

参考自 getInsertSQL().

FLEA_Db_Driver_Abstract::getPlaceholderPair ( &$  inputarr,
fields = null 
)

根据驱动的参数占位符样式,返回包含参数及占位符字符串对、有效数据的数组

参数:
array $inputarr
array $fields
返回:
array

在文件Abstract.php839行定义。

参考 qfield().

参考自 getUpdateSQL().


成员数据文档

FLEA_Db_Driver_Abstract::$TRUE_VALUE = 1

用于描绘 true、false 和 null 的数据库值

在文件Abstract.php50行定义。

FLEA_Db_Driver_Abstract::$FALSE_VALUE = 0

在文件Abstract.php51行定义。

FLEA_Db_Driver_Abstract::$NULL_VALUE = 'NULL'

在文件Abstract.php52行定义。

FLEA_Db_Driver_Abstract::$NEXT_ID_SQL = null

用于 genSeq()、dropSeq() 和 nextId() 的 SQL 查询语句

FLEA_Db_Driver_MysqlFLEA_Db_Driver_Oracle重载。

在文件Abstract.php57行定义。

FLEA_Db_Driver_Abstract::$CREATE_SEQ_SQL = null

FLEA_Db_Driver_MysqlFLEA_Db_Driver_Oracle重载。

在文件Abstract.php58行定义。

FLEA_Db_Driver_Abstract::$INIT_SEQ_SQL = null

FLEA_Db_Driver_Mysql重载。

在文件Abstract.php59行定义。

FLEA_Db_Driver_Abstract::$DROP_SEQ_SQL = null

FLEA_Db_Driver_MysqlFLEA_Db_Driver_Oracle重载。

在文件Abstract.php60行定义。

FLEA_Db_Driver_Abstract::$META_COLUMNS_SQL = null

用于获取元数据的 SQL 查询语句

FLEA_Db_Driver_MysqlFLEA_Db_Driver_Oracle重载。

在文件Abstract.php65行定义。

FLEA_Db_Driver_Abstract::$PARAM_STYLE = DBO_PARAM_QM

FLEA_Db_Driver_MysqlFLEA_Db_Driver_Oracle重载。

在文件Abstract.php72行定义。

FLEA_Db_Driver_Abstract::$HAS_INSERT_ID = false

FLEA_Db_Driver_Mysql重载。

在文件Abstract.php79行定义。

FLEA_Db_Driver_Abstract::$HAS_AFFECTED_ROWS = false

FLEA_Db_Driver_MysqlFLEA_Db_Driver_Oracle重载。

在文件Abstract.php86行定义。

FLEA_Db_Driver_Abstract::$HAS_TRANSACTION = false

FLEA_Db_Driver_MysqltFLEA_Db_Driver_Oracle重载。

在文件Abstract.php93行定义。

FLEA_Db_Driver_Abstract::$HAS_SAVEPOINT = false

FLEA_Db_Driver_Oracle重载。

在文件Abstract.php100行定义。

FLEA_Db_Driver_Abstract::$RESULT_FIELD_NAME_LOWER = false

FLEA_Db_Driver_Oracle重载。

在文件Abstract.php107行定义。

FLEA_Db_Driver_Abstract::$dsn = null

在文件Abstract.php114行定义。

参考自 FLEA_Db_Driver_Oracle::connect()FLEA_Db_Driver_Mysqlt::connect()FLEA_Db_Driver_Mysql::connect()FLEA_Db_Driver_Abstract().

FLEA_Db_Driver_Abstract::$conn = null

在文件Abstract.php121行定义。

FLEA_Db_Driver_Abstract::$log = array()

在文件Abstract.php128行定义。

FLEA_Db_Driver_Abstract::$querycount = 0

在文件Abstract.php135行定义。

FLEA_Db_Driver_Abstract::$lasterr = null

在文件Abstract.php142行定义。

FLEA_Db_Driver_Abstract::$lasterrcode = null

在文件Abstract.php149行定义。

FLEA_Db_Driver_Abstract::$_insertId = null

在文件Abstract.php156行定义。

FLEA_Db_Driver_Abstract::$_transCount = 0

在文件Abstract.php163行定义。

FLEA_Db_Driver_Abstract::$_hasFailedQuery = false

在文件Abstract.php170行定义。

FLEA_Db_Driver_Abstract::$_savepointStack = array()

在文件Abstract.php177行定义。


该类的文档由以下文件生成:
Generated at Sat Feb 2 15:18:54 2008 for FleaPHP by  doxygen 1.5.3