公有成员 | |
| FLEA_Db_Driver_Sqlite ($dsn=false) | |
| connect ($dsn=false) | |
| close () | |
| execute ($sql, $inputarr=null, $throw=true) | |
| qstr ($value) | |
| qtable ($tableName) | |
| qfield ($fieldName, $tableName=null) | |
| qfields ($fields, $tableName=null) | |
| nextId ($seqName= 'sdboseq', $startValue=1) | |
| createSeq ($seqName= 'sdboseq', $startValue=1) | |
| dropSeq ($seqName= 'sdboseq') | |
| insertId () | |
| affectedRows () | |
| fetchRow ($res) | |
| fetchAssoc ($res) | |
| freeRes ($res) | |
| selectLimit ($sql, $length=null, $offset=null) | |
| & | getAll ($sql) |
| & | getAllGroupBy ($sql, $groupBy) |
| getAllWithFieldRefs ($sql, $field, &$fieldValues, &$reference) | |
| assemble ($sql, &$assocRowset, $mappingName, $oneToOne, $refKeyName, $limit=null) | |
| getOne ($sql) | |
| & | getRow ($sql) |
| & | getCol ($sql, $col=0) |
| & | metaColumns ($table) |
| dbTimeStamp ($timestamp) | |
| startTrans () | |
| completeTrans ($commitOnNoErrors=true) | |
| failTrans () | |
| hasFailedTrans () | |
| _prepareSql ($sql, &$inputarr) | |
公有属性 | |
| $NEXT_ID_SQL = "UPDATE %s SET id = LAST_INSERT_ID(id + 1)" | |
| $CREATE_SEQ_SQL = "CREATE TABLE %s (id INT NOT NULL)" | |
| $INIT_SEQ_SQL = "INSERT INTO %s VALUES (%s)" | |
| $DROP_SEQ_SQL = "DROP TABLE %s" | |
| $TRUE_VALUE = 1 | |
| $FALSE_VALUE = 0 | |
| $NULL_VALUE = 'NULL' | |
| $META_COLUMNS_SQL = "SELECT sql FROM sqlite_master WHERE type='table' and name='%s'" | |
| $dsn = null | |
| $conn = null | |
| $log = array() | |
| $enableLog = false | |
| $lasterr = null | |
| $lasterrcode = null | |
| $_insertId = null | |
| $_transCount = 0 | |
| $_transCommit = true | |
在文件Sqlite.php第14行定义。
| FLEA_Db_Driver_Sqlite::FLEA_Db_Driver_Sqlite | ( | $ | dsn = false |
) |
| FLEA_Db_Driver_Sqlite::connect | ( | $ | dsn = false |
) |
| FLEA_Db_Driver_Sqlite::close | ( | ) |
关闭数据库连接
在文件Sqlite.php第140行定义。
| FLEA_Db_Driver_Sqlite::execute | ( | $ | sql, | |
| $ | inputarr = null, |
|||
| $ | throw = true | |||
| ) |
执行一个查询,返回一个 resource 或者 boolean 值
| string | $sql | |
| array | $inputarr | |
| boolean | $throw 指示查询出错时是否抛出异常 |
在文件Sqlite.php第162行定义。
参考 __THROW()、_prepareSql()、FLEA::loadClass()及log_message().
参考自 assemble()、createSeq()、dropSeq()、getAll()、getAllGroupBy()、getAllWithFieldRefs()、getCol()、getOne()、getRow()、metaColumns()、nextId()及selectLimit().
| FLEA_Db_Driver_Sqlite::qstr | ( | $ | value | ) |
| FLEA_Db_Driver_Sqlite::qtable | ( | $ | tableName | ) |
| FLEA_Db_Driver_Sqlite::qfield | ( | $ | fieldName, | |
| $ | tableName = null | |||
| ) |
将字段名转换为完全限定名,避免因为字段名和数据库关键词相同导致的错误
| string | $fieldName | |
| string | $tableName |
在文件Sqlite.php第235行定义。
| FLEA_Db_Driver_Sqlite::qfields | ( | $ | fields, | |
| $ | tableName = null | |||
| ) |
| FLEA_Db_Driver_Sqlite::nextId | ( | $ | seqName = 'sdboseq', |
|
| $ | startValue = 1 | |||
| ) |
| FLEA_Db_Driver_Sqlite::createSeq | ( | $ | seqName = 'sdboseq', |
|
| $ | startValue = 1 | |||
| ) |
创建一个新的序列,成功返回 true,失败返回 false
| string | $seqName | |
| int | $startValue |
在文件Sqlite.php第327行定义。
参考 execute().
参考自 nextId().
| FLEA_Db_Driver_Sqlite::dropSeq | ( | $ | seqName = 'sdboseq' |
) |
| FLEA_Db_Driver_Sqlite::insertId | ( | ) |
| FLEA_Db_Driver_Sqlite::affectedRows | ( | ) |
| FLEA_Db_Driver_Sqlite::fetchRow | ( | $ | res | ) |
| FLEA_Db_Driver_Sqlite::fetchAssoc | ( | $ | res | ) |
| FLEA_Db_Driver_Sqlite::freeRes | ( | $ | res | ) |
| FLEA_Db_Driver_Sqlite::selectLimit | ( | $ | sql, | |
| $ | length = null, |
|||
| $ | offset = null | |||
| ) |
进行限定记录集的查询
| string | $sql | |
| int | $length | |
| int | $offset |
在文件Sqlite.php第426行定义。
参考 execute().
参考自 assemble().
| & FLEA_Db_Driver_Sqlite::getAll | ( | $ | sql | ) |
| & FLEA_Db_Driver_Sqlite::getAllGroupBy | ( | $ | sql, | |
| $ | groupBy | |||
| ) |
执行一个查询,返回分组后的查询结果记录集
$groupBy 参数如果为字符串或整数,表示结果集根据 $groupBy 参数指定的字段进行分组。 如果 $groupBy 参数为 true,则表示根据每行记录的第一个字段进行分组。
| string|resource | $sql | |
| string|int|boolean | $groupBy |
在文件Sqlite.php第479行定义。
参考 execute().
| FLEA_Db_Driver_Sqlite::getAllWithFieldRefs | ( | $ | sql, | |
| $ | field, | |||
| &$ | fieldValues, | |||
| &$ | reference | |||
| ) |
执行一个查询,返回查询结果记录集、指定字段的值集合以及以该字段值分组后的记录集
| string|resource | $sql | |
| string | $field | |
| array | $fieldValues | |
| array | $reference |
在文件Sqlite.php第518行定义。
参考 execute().
| FLEA_Db_Driver_Sqlite::assemble | ( | $ | sql, | |
| &$ | assocRowset, | |||
| $ | mappingName, | |||
| $ | oneToOne, | |||
| $ | refKeyName, | |||
| $ | limit = null | |||
| ) |
执行一个查询,并将数据按照指定字段分组后与 $assocRowset 记录集组装在一起
| string|resource | $sql | |
| array | $assocRowset | |
| string | $mappingName | |
| boolean | $oneToOne | |
| string | $refKeyName | |
| mixed | $limit |
在文件Sqlite.php第557行定义。
| FLEA_Db_Driver_Sqlite::getOne | ( | $ | sql | ) |
| & FLEA_Db_Driver_Sqlite::getRow | ( | $ | sql | ) |
| & FLEA_Db_Driver_Sqlite::getCol | ( | $ | sql, | |
| $ | col = 0 | |||
| ) |
执行查询,返回结果集的指定列
| string|resource | $sql | |
| int | $col 要返回的列,0 为第一列 |
在文件Sqlite.php第653行定义。
参考 execute().
| & FLEA_Db_Driver_Sqlite::metaColumns | ( | $ | table | ) |
返回指定表(或者视图)的元数据
部分代码参考 ADOdb 实现。
每个字段包含下列属性:
name: 字段名 scale: 小数位数 type: 字段类型 simpleType: 简单字段类型(与数据库无关) maxLength: 最大长度 notNull: 是否不允许保存 NULL 值 primaryKey: 是否是主键 autoIncrement: 是否是自动增量字段 binary: 是否是二进制数据 unsigned: 是否是无符号数值 hasDefault: 是否有默认值 defaultValue: 默认值
| string | $table |
C 长度小于等于 250 的字符串 X 长度大于 250 的字符串 B 二进制数据 N 数值或者浮点数 D 日期 T TimeStamp L 逻辑布尔值 I 整数 R 自动增量或计数器
在文件Sqlite.php第691行定义。
参考 execute().
| FLEA_Db_Driver_Sqlite::dbTimeStamp | ( | $ | timestamp | ) |
| FLEA_Db_Driver_Sqlite::startTrans | ( | ) |
启动事务
在文件Sqlite.php第841行定义。
| FLEA_Db_Driver_Sqlite::completeTrans | ( | $ | commitOnNoErrors = true |
) |
完成事务,根据查询是否出错决定是提交事务还是回滚事务
如果 $commitOnNoErrors 参数为 true,当事务中所有查询都成功完成时,则提交事务,否则回滚事务 如果 $commitOnNoErrors 参数为 false,则强制回滚事务
| $commitOnNoErrors | 指示在没有错误时是否提交事务 |
在文件Sqlite.php第853行定义。
| FLEA_Db_Driver_Sqlite::failTrans | ( | ) |
强制指示在调用 completeTrans() 时回滚事务
在文件Sqlite.php第861行定义。
| FLEA_Db_Driver_Sqlite::hasFailedTrans | ( | ) |
反复事务是否失败的状态
在文件Sqlite.php第869行定义。
| FLEA_Db_Driver_Sqlite::_prepareSql | ( | $ | sql, | |
| &$ | inputarr | |||
| ) |
根据 SQL 语句和提供的参数数组,生成最终的 SQL 语句
| string | $sql | |
| array | $inputarr |
在文件Sqlite.php第882行定义。
参考 qstr().
参考自 execute().
| FLEA_Db_Driver_Sqlite::$NEXT_ID_SQL = "UPDATE %s SET id = LAST_INSERT_ID(id + 1)" |
用于 genSeq()、dropSeq() 和 nextId() 的 SQL 查询语句
在文件Sqlite.php第19行定义。
| FLEA_Db_Driver_Sqlite::$CREATE_SEQ_SQL = "CREATE TABLE %s (id INT NOT NULL)" |
在文件Sqlite.php第20行定义。
| FLEA_Db_Driver_Sqlite::$INIT_SEQ_SQL = "INSERT INTO %s VALUES (%s)" |
在文件Sqlite.php第21行定义。
| FLEA_Db_Driver_Sqlite::$DROP_SEQ_SQL = "DROP TABLE %s" |
在文件Sqlite.php第22行定义。
| FLEA_Db_Driver_Sqlite::$TRUE_VALUE = 1 |
用于描绘 true、false 和 null 的数据库值
在文件Sqlite.php第27行定义。
| FLEA_Db_Driver_Sqlite::$FALSE_VALUE = 0 |
在文件Sqlite.php第28行定义。
| FLEA_Db_Driver_Sqlite::$NULL_VALUE = 'NULL' |
在文件Sqlite.php第29行定义。
| FLEA_Db_Driver_Sqlite::$META_COLUMNS_SQL = "SELECT sql FROM sqlite_master WHERE type='table' and name='%s'" |
用于获取元数据的 SQL 查询语句
在文件Sqlite.php第34行定义。
| FLEA_Db_Driver_Sqlite::$dsn = null |
| FLEA_Db_Driver_Sqlite::$conn = null |
在文件Sqlite.php第48行定义。
| FLEA_Db_Driver_Sqlite::$log = array() |
在文件Sqlite.php第55行定义。
| FLEA_Db_Driver_Sqlite::$enableLog = false |
在文件Sqlite.php第62行定义。
| FLEA_Db_Driver_Sqlite::$lasterr = null |
在文件Sqlite.php第69行定义。
| FLEA_Db_Driver_Sqlite::$lasterrcode = null |
在文件Sqlite.php第76行定义。
| FLEA_Db_Driver_Sqlite::$_insertId = null |
在文件Sqlite.php第83行定义。
| FLEA_Db_Driver_Sqlite::$_transCount = 0 |
在文件Sqlite.php第90行定义。
| FLEA_Db_Driver_Sqlite::$_transCommit = true |
在文件Sqlite.php第97行定义。
1.5.3