新增
This commit is contained in:
@@ -0,0 +1,226 @@
|
||||
<?php
|
||||
|
||||
// +----------------------------------------------------------------------
|
||||
// | ThinkPHP [ WE CAN DO IT JUST THINK ]
|
||||
// +----------------------------------------------------------------------
|
||||
// | Copyright (c) 2006~2023 http://thinkphp.cn All rights reserved.
|
||||
// +----------------------------------------------------------------------
|
||||
// | Licensed ( http://www.apache.org/licenses/LICENSE-2.0 )
|
||||
// +----------------------------------------------------------------------
|
||||
// | Author: liu21st <liu21st@gmail.com>
|
||||
// +----------------------------------------------------------------------
|
||||
declare(strict_types=1);
|
||||
|
||||
namespace think\db;
|
||||
|
||||
use Psr\SimpleCache\CacheInterface;
|
||||
use think\DbManager;
|
||||
|
||||
/**
|
||||
* Connection interface.
|
||||
*/
|
||||
interface ConnectionInterface
|
||||
{
|
||||
/**
|
||||
* 获取当前连接器类对应的Query类.
|
||||
*
|
||||
* @return string
|
||||
*/
|
||||
public function getQueryClass(): string;
|
||||
|
||||
/**
|
||||
* 指定表名开始查询.
|
||||
*
|
||||
* @param $table
|
||||
*
|
||||
* @return BaseQuery
|
||||
*/
|
||||
public function table($table);
|
||||
|
||||
/**
|
||||
* 指定表名开始查询(不带前缀).
|
||||
*
|
||||
* @param $name
|
||||
*
|
||||
* @return BaseQuery
|
||||
*/
|
||||
public function name($name);
|
||||
|
||||
/**
|
||||
* 连接数据库方法.
|
||||
*
|
||||
* @param array $config 接参数
|
||||
* @param int $linkNum 连接序号
|
||||
*
|
||||
* @return mixed
|
||||
*/
|
||||
public function connect(array $config = [], $linkNum = 0);
|
||||
|
||||
/**
|
||||
* 设置当前的数据库Db对象
|
||||
*
|
||||
* @param DbManager $db
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function setDb(DbManager $db);
|
||||
|
||||
/**
|
||||
* 设置当前的缓存对象
|
||||
*
|
||||
* @param CacheInterface $cache
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function setCache(CacheInterface $cache);
|
||||
|
||||
/**
|
||||
* 获取数据库的配置参数.
|
||||
*
|
||||
* @param string $config 配置名称
|
||||
*
|
||||
* @return mixed
|
||||
*/
|
||||
public function getConfig(string $config = '');
|
||||
|
||||
/**
|
||||
* 关闭数据库(或者重新连接).
|
||||
*
|
||||
* @return $this
|
||||
*/
|
||||
public function close();
|
||||
|
||||
/**
|
||||
* 查找单条记录.
|
||||
*
|
||||
* @param BaseQuery $query 查询对象
|
||||
*
|
||||
* @return array
|
||||
*/
|
||||
public function find(BaseQuery $query): array;
|
||||
|
||||
/**
|
||||
* 查找记录.
|
||||
*
|
||||
* @param BaseQuery $query 查询对象
|
||||
*
|
||||
* @return array
|
||||
*/
|
||||
public function select(BaseQuery $query): array;
|
||||
|
||||
/**
|
||||
* 插入记录.
|
||||
*
|
||||
* @param BaseQuery $query 查询对象
|
||||
* @param bool $getLastInsID 返回自增主键
|
||||
*
|
||||
* @return mixed
|
||||
*/
|
||||
public function insert(BaseQuery $query, bool $getLastInsID = false);
|
||||
|
||||
/**
|
||||
* 批量插入记录.
|
||||
*
|
||||
* @param BaseQuery $query 查询对象
|
||||
* @param mixed $dataSet 数据集
|
||||
*
|
||||
* @return int
|
||||
*/
|
||||
public function insertAll(BaseQuery $query, array $dataSet = []): int;
|
||||
|
||||
/**
|
||||
* 更新记录.
|
||||
*
|
||||
* @param BaseQuery $query 查询对象
|
||||
*
|
||||
* @return int
|
||||
*/
|
||||
public function update(BaseQuery $query): int;
|
||||
|
||||
/**
|
||||
* 删除记录.
|
||||
*
|
||||
* @param BaseQuery $query 查询对象
|
||||
*
|
||||
* @return int
|
||||
*/
|
||||
public function delete(BaseQuery $query): int;
|
||||
|
||||
/**
|
||||
* 得到某个字段的值
|
||||
*
|
||||
* @param BaseQuery $query 查询对象
|
||||
* @param string $field 字段名
|
||||
* @param mixed $default 默认值
|
||||
*
|
||||
* @return mixed
|
||||
*/
|
||||
public function value(BaseQuery $query, string $field, $default = null);
|
||||
|
||||
/**
|
||||
* 得到某个列的数组.
|
||||
*
|
||||
* @param BaseQuery $query 查询对象
|
||||
* @param string|array $column 字段名 多个字段用逗号分隔
|
||||
* @param string $key 索引
|
||||
*
|
||||
* @return array
|
||||
*/
|
||||
public function column(BaseQuery $query, string|array $column, string $key = ''): array;
|
||||
|
||||
/**
|
||||
* 执行数据库事务
|
||||
*
|
||||
* @param callable $callback 数据操作方法回调
|
||||
*
|
||||
* @return mixed
|
||||
*/
|
||||
public function transaction(callable $callback);
|
||||
|
||||
/**
|
||||
* 启动事务
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function startTrans();
|
||||
|
||||
/**
|
||||
* 用于非自动提交状态下面的查询提交.
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function commit();
|
||||
|
||||
/**
|
||||
* 事务回滚.
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function rollback();
|
||||
|
||||
/**
|
||||
* 取得数据表的字段信息.
|
||||
*
|
||||
* @param string $tableName
|
||||
*
|
||||
* @return array
|
||||
*/
|
||||
public function getTableFields(string $tableName): array;
|
||||
|
||||
/**
|
||||
* 获取最近一次查询的sql语句.
|
||||
*
|
||||
* @return string
|
||||
*/
|
||||
public function getLastSql(): string;
|
||||
|
||||
/**
|
||||
* 获取最近插入的ID.
|
||||
*
|
||||
* @param BaseQuery $query 查询对象
|
||||
* @param string $sequence 自增序列名
|
||||
*
|
||||
* @return mixed
|
||||
*/
|
||||
public function getLastInsID(BaseQuery $query, string $sequence = null);
|
||||
}
|
||||
Reference in New Issue
Block a user