Properties

$queryStr

$queryStr : string

当前SQL指令

Type

string

$numRows

$numRows : int

返回或者影响记录数

Type

int

$transTimes

$transTimes : int

事务指令数

Type

int

$error

$error : string

错误信息

Type

string

$links

$links : array

数据库连接ID 支持多个连接

Type

array

$linkID

$linkID : object

当前连接ID

Type

object

$linkRead

$linkRead : object

当前读连接ID

Type

object

$linkWrite

$linkWrite : object

当前写连接ID

Type

object

$info

$info : array

数据表信息

Type

array

$queryStartTime

$queryStartTime : float

查询开始时间

Type

float

$builder

$builder : \think\db\builder\Mongo

Builder对象

Type

Mongo

$db

$db : \think\DbManager

Db对象

Type

DbManager

$readMaster

$readMaster : bool

是否读取主库

Type

bool

$config

$config : array

数据库连接参数配置

Type

array

$cache

$cache : \Psr\SimpleCache\CacheInterface

缓存对象

Type

CacheInterface

$dbName

$dbName

$typeMap

$typeMap

$mongo

$mongo

$cursor

$cursor

$session_uuid

$session_uuid

$sessions

$sessions

Methods

__construct()

__construct(array  $config = []) : mixed

架构函数 读取数据库配置信息

Parameters

array $config

数据库配置数组

Returns

mixed —

getBuilder()

getBuilder() : \think\db\builder\Mongo

获取当前的builder实例对象

Returns

\think\db\builder\Mongo —

newQuery()

newQuery() : mixed

创建查询对象

Returns

mixed —

table()

table( $table) : \think\db\BaseQuery

指定表名开始查询

Parameters

$table

Returns

\think\db\BaseQuery —

name()

name( $name) : \think\db\BaseQuery

指定表名开始查询(不带前缀)

Parameters

$name

Returns

\think\db\BaseQuery —

setDb()

setDb(\think\DbManager  $db) : void

设置当前的数据库Db对象

Parameters

\think\DbManager $db

setCache()

setCache(\Psr\SimpleCache\CacheInterface  $cache) : void

设置当前的缓存对象

Parameters

\Psr\SimpleCache\CacheInterface $cache

getCache()

getCache() : \Psr\SimpleCache\CacheInterface|null

获取当前的缓存对象

Returns

\Psr\SimpleCache\CacheInterface|null —

getConfig()

getConfig(string  $config = '') : mixed

获取数据库的配置参数

Parameters

string $config

配置名称

Returns

mixed —

getNumRows()

getNumRows() : int

获取返回或者影响的记录数

Returns

int —

__destruct()

__destruct() : mixed

析构方法

Returns

mixed —

getQueryClass()

getQueryClass() : string

获取当前连接器类对应的Query类

Returns

string —

getBuilderClass()

getBuilderClass() : string

获取当前连接器类对应的Builder类

Returns

string —

connect()

connect(array  $config = [], int  $linkNum) : \MongoDB\Driver\Manager

连接数据库方法

Parameters

array $config

连接参数

int $linkNum

连接序号

Throws

\MongoDB\Driver\Exception\InvalidArgumentException
\MongoDB\Driver\Exception\RuntimeException

Returns

\MongoDB\Driver\Manager —

getMongo()

getMongo() : \MongoDB\Driver\Manager|null

获取Mongo Manager对象

Returns

\MongoDB\Driver\Manager|null —

db()

db(string  $db = null) : string

设置/获取当前操作的database

Parameters

string $db

db

Returns

string —

cursor()

cursor(\think\db\Mongo  $query) : \MongoDB\Driver\Cursor

执行查询但只返回Cursor对象

Parameters

\think\db\Mongo $query

查询对象

Returns

\MongoDB\Driver\Cursor —

getCursor()

getCursor(\think\db\BaseQuery  $query, \MongoDB\Driver\Query|\Closure  $mongoQuery, bool  $master = false) : \MongoDB\Driver\Cursor

执行查询并返回Cursor对象

Parameters

\think\db\BaseQuery $query

查询对象

\MongoDB\Driver\Query|\Closure $mongoQuery

Mongo查询对象

bool $master

是否主库操作

Throws

\MongoDB\Driver\Exception\AuthenticationException
\MongoDB\Driver\Exception\InvalidArgumentException
\MongoDB\Driver\Exception\ConnectionException
\MongoDB\Driver\Exception\RuntimeException

Returns

\MongoDB\Driver\Cursor —

query()

query(\MongoDB\Driver\Query  $query) : mixed

执行查询 返回数据集

Parameters

\MongoDB\Driver\Query $query

查询对象

Throws

\MongoDB\Driver\Exception\AuthenticationException
\MongoDB\Driver\Exception\InvalidArgumentException
\MongoDB\Driver\Exception\ConnectionException
\MongoDB\Driver\Exception\RuntimeException

Returns

mixed —

execute()

execute(\MongoDB\Driver\BulkWrite  $bulk) : int

执行语句

Parameters

\MongoDB\Driver\BulkWrite $bulk

Throws

\MongoDB\Driver\Exception\AuthenticationException
\MongoDB\Driver\Exception\InvalidArgumentException
\MongoDB\Driver\Exception\ConnectionException
\MongoDB\Driver\Exception\RuntimeException
\MongoDB\Driver\Exception\BulkWriteException

Returns

int —

command()

command(\MongoDB\Driver\Command  $command, string  $dbName = '', \MongoDB\Driver\ReadPreference  $readPreference = null, string|array  $typeMap = null, bool  $master = false) : array

执行指令

Parameters

\MongoDB\Driver\Command $command

指令

string $dbName

当前数据库名

\MongoDB\Driver\ReadPreference $readPreference

readPreference

string|array $typeMap

指定返回的typeMap

bool $master

是否主库操作

Throws

\MongoDB\Driver\Exception\AuthenticationException
\MongoDB\Driver\Exception\InvalidArgumentException
\MongoDB\Driver\Exception\ConnectionException
\MongoDB\Driver\Exception\RuntimeException

Returns

array —

mongoLog()

mongoLog(string  $type, mixed  $data, array  $options = []) : void

数据库日志记录(仅供参考)

Parameters

string $type

类型

mixed $data

数据

array $options

参数

getLastSql()

getLastSql() : string

获取最近执行的指令

Returns

string —

close()

close() : mixed

关闭数据库

Returns

mixed —

replicaSetConnect()

replicaSetConnect() : \MongoDB\Driver\Manager

创建基于复制集的连接

Returns

\MongoDB\Driver\Manager —

insert()

insert(\think\db\BaseQuery  $query, bool  $getLastInsID = false) : mixed

插入记录

Parameters

\think\db\BaseQuery $query

查询对象

bool $getLastInsID

返回自增主键

Throws

\MongoDB\Driver\Exception\AuthenticationException
\MongoDB\Driver\Exception\InvalidArgumentException
\MongoDB\Driver\Exception\ConnectionException
\MongoDB\Driver\Exception\RuntimeException
\MongoDB\Driver\Exception\BulkWriteException

Returns

mixed —

getLastInsID()

getLastInsID(\think\db\BaseQuery  $query) : mixed

获取最近插入的ID

Parameters

\think\db\BaseQuery $query

查询对象

Returns

mixed —

insertAll()

insertAll(\think\db\BaseQuery  $query, array  $dataSet = []) : int

批量插入记录

Parameters

\think\db\BaseQuery $query

查询对象

array $dataSet

数据集

Throws

\MongoDB\Driver\Exception\AuthenticationException
\MongoDB\Driver\Exception\InvalidArgumentException
\MongoDB\Driver\Exception\ConnectionException
\MongoDB\Driver\Exception\RuntimeException
\MongoDB\Driver\Exception\BulkWriteException

Returns

int —

update()

update(\think\db\BaseQuery  $query) : int

更新记录

Parameters

\think\db\BaseQuery $query

查询对象

Throws

\think\db\exception\DbException
\MongoDB\Driver\Exception\AuthenticationException
\MongoDB\Driver\Exception\InvalidArgumentException
\MongoDB\Driver\Exception\ConnectionException
\MongoDB\Driver\Exception\RuntimeException
\MongoDB\Driver\Exception\BulkWriteException

Returns

int —

delete()

delete(\think\db\BaseQuery  $query) : int

删除记录

Parameters

\think\db\BaseQuery $query

查询对象

Throws

\think\db\exception\DbException
\MongoDB\Driver\Exception\AuthenticationException
\MongoDB\Driver\Exception\InvalidArgumentException
\MongoDB\Driver\Exception\ConnectionException
\MongoDB\Driver\Exception\RuntimeException
\MongoDB\Driver\Exception\BulkWriteException

Returns

int —

select()

select(\think\db\BaseQuery  $query) : array

查找记录

Parameters

\think\db\BaseQuery $query

查询对象

Throws

\think\db\connector\ModelNotFoundException
\think\db\connector\DataNotFoundException
\MongoDB\Driver\Exception\AuthenticationException
\MongoDB\Driver\Exception\InvalidArgumentException
\MongoDB\Driver\Exception\ConnectionException
\MongoDB\Driver\Exception\RuntimeException

Returns

array —

find()

find(\think\db\BaseQuery  $query) : array

查找单条记录

Parameters

\think\db\BaseQuery $query

查询对象

Throws

\think\db\connector\ModelNotFoundException
\think\db\connector\DataNotFoundException
\MongoDB\Driver\Exception\AuthenticationException
\MongoDB\Driver\Exception\InvalidArgumentException
\MongoDB\Driver\Exception\ConnectionException
\MongoDB\Driver\Exception\RuntimeException

Returns

array —

value()

value(\think\db\BaseQuery  $query, string  $field, mixed  $default = null) : mixed

得到某个字段的值

Parameters

\think\db\BaseQuery $query
string $field

字段名

mixed $default

默认值

Returns

mixed —

column()

column(\think\db\BaseQuery  $query, string  $field, string  $key = '') : array

得到某个列的数组

Parameters

\think\db\BaseQuery $query
string $field

字段名 多个字段用逗号分隔

string $key

索引

Returns

array —

cmd()

cmd(\think\db\BaseQuery  $query, string|array|object  $command, mixed  $extra = null, string  $db = '') : array

执行command

Parameters

\think\db\BaseQuery $query

查询对象

string|array|object $command

指令

mixed $extra

额外参数

string $db

数据库名

Returns

array —

getTableFields()

getTableFields(mixed  $tableName) : array

获取数据库字段

Parameters

mixed $tableName

数据表名

Returns

array —

transaction()

transaction(callable  $callback) : mixed

执行数据库事务

Parameters

callable $callback

数据操作方法回调

Throws

\think\db\connector\PDOException
\Exception
\Throwable

Returns

mixed —

startTrans()

startTrans() : void

启动事务

Throws

\PDOException
\Exception

commit()

commit() : void

用于非自动提交状态下面的查询提交

Throws

\think\db\connector\PDOException

rollback()

rollback() : void

事务回滚

Throws

\think\db\connector\PDOException

getSession()

getSession() : \MongoDB\Driver\Session|null

获取当前会话

Returns

\MongoDB\Driver\Session|null —

trigger()

trigger(string  $sql = '', bool  $master = false) : void

数据库SQL监控

Parameters

string $sql

执行的SQL语句 留空自动获取

bool $master

主从标记

cacheData()

cacheData(\think\db\CacheItem  $cacheItem) : mixed

缓存数据

Parameters

\think\db\CacheItem $cacheItem

缓存Item

Returns

mixed —

getCacheKey()

getCacheKey(\think\db\BaseQuery  $query, string  $method = '') : string

分析缓存Key

Parameters

\think\db\BaseQuery $query

查询对象

string $method

查询方法

Returns

string —

parseCache()

parseCache(\think\db\BaseQuery  $query, array  $cache, string  $method = '') : \think\db\CacheItem

分析缓存

Parameters

\think\db\BaseQuery $query

查询对象

array $cache

缓存信息

string $method

查询方法

Returns

\think\db\CacheItem —

mongoQuery()

mongoQuery(\think\db\BaseQuery  $query, \MongoDB\Driver\Query|\Closure  $mongoQuery) : array

执行查询

Parameters

\think\db\BaseQuery $query

查询对象

\MongoDB\Driver\Query|\Closure $mongoQuery

Mongo查询对象

Throws

\MongoDB\Driver\Exception\AuthenticationException
\MongoDB\Driver\Exception\InvalidArgumentException
\MongoDB\Driver\Exception\ConnectionException
\MongoDB\Driver\Exception\RuntimeException

Returns

array —

mongoExecute()

mongoExecute(\think\db\BaseQuery  $query, \MongoDB\Driver\BulkWrite  $bulk) : \think\db\connector\WriteResult

执行写操作

Parameters

\think\db\BaseQuery $query
\MongoDB\Driver\BulkWrite $bulk

Throws

\MongoDB\Driver\Exception\AuthenticationException
\MongoDB\Driver\Exception\InvalidArgumentException
\MongoDB\Driver\Exception\ConnectionException
\MongoDB\Driver\Exception\RuntimeException
\MongoDB\Driver\Exception\BulkWriteException

Returns

\think\db\connector\WriteResult —

getResult()

getResult(string|array  $typeMap = null) : mixed

获得数据集

Parameters

string|array $typeMap

指定返回的typeMap

Returns

mixed —

convertObjectID()

convertObjectID(array  $data) : void

ObjectID处理

Parameters

array $data

数据

initConnect()

initConnect(bool  $master = true) : void

初始化数据库连接

Parameters

bool $master

是否主服务器

multiConnect()

multiConnect(bool  $master = false) : \MongoDB\Driver\Manager

连接分布式服务器

Parameters

bool $master

主服务器

Returns

\MongoDB\Driver\Manager —

setLastSession()

setLastSession() : mixed

结束当前会话,设置上一个会话为当前会话

Returns

mixed —

buildUrl()

buildUrl() : string

根据配置信息 生成适用于连接复制集的 URL

Returns

string —