基本操作

主从说明

如果配置了从数据库,增删改默认使用主数据库,查默认使用从数据库。

数据绑定

数据库操作使用参数绑定,可以防止前端注入攻击!!!

sql_get([
    "table" => "tablename",
    "where" => "name LIKE :name AND mobile = :mobile",
    "order" => "id DESC",
    "bind"  => [
        ":name"   => "%{$name}%",
        ":mobile" => $mobile,
    ],
]);
// :name、:mobile 就被 $name、$mobile 给替换掉了,并且过滤掉sql注入风险

sql_get - 查一条数据

sql_get([
    "table"  => "",
    "where"  => "",
    "order"  => "",
    "bind"   => [],
    "fields" => "",
]);
字段字符类型必填说明
tablestring表名称,不含前缀
wherestring查询条件 a = 1 AND b = 2
orderstring排序 id DESC, order_no ASC
bindarray参数绑定
fieldsstring默认为*,SUM(pay) as total
assign
string操作数据库,主master、从slave

sql_getall - 查多条数据

sql_getall([
    "table"  => "",
    "where"  => "",
    "order"  => "",
    "bind"   => [],
    "fields" => "",
    "setkey" => "",
    "limit"  => "",
]);
字段字符类型必填说明
tablestring数据表名称,不含前缀
wherestring查询条件 a = 1 AND b = 2
orderstring排序 id DESC, order_no ASC
bindarray参数绑定
setkeystring修改输出数组的键为指定key键的值
fieldsstring默认为*,SUM(pay) as total
limitstring|arraystring/10:获取10条数据;array/[0,10]:获取第0-10条数据
assign
string操作数据库,主master、从slave

sql_update - 改

sql_update([
    "table" => "",
    "data"  => [],
    "where" => "",
    "bind"  => [],
    "math"  => [],
]);
字段字符类型必填说明
tablestring数据表名称,不含前缀
dataarray需要更新的数据数组 如 ["views" => 2]
wherestring查询条件 a = 1 AND b = 2
bindarray参数绑定
matharray更新数据库时的计算操作 如 ["views" => "+"] 代表给views增加上边data的2
assign
string操作数据库,主master、从slave

sql_insert - 增

sql_insert([
    "table" => "",
    "data"  => [],
    "bind"  => [],
]);
字段字符类型必填说明
tablestring数据表名称,不含前缀
dataarray数据数组,支持多条数据同时新增
bindarray参数绑定
assign
string操作数据库,主master、从slave

sql_delete - 删

sql_delete([
    "table" => "",
    "where" => "",
    "bind"  => [],
]);
字段字符类型必填说明
tablestring数据表名称,不含前缀
wherestring查询条件 a = 1 AND b = 2
bindarray参数绑定
assign
string操作数据库,主master、从slave

sql_query - 自定义操作

sql_query($query, $assign);
// $query 为完整的Mysql语句
// $assign 非必填,主master、从slave

sql_counter - 获取数据条数

sql_counter([
    "table"  => "",
    "where"  => "",
    "bind"   => [],
    "fields" => ""
]);
字段字符类型必填说明
tablestring数据表名称,不含前缀
wherestring查询条件 a = 1 AND b = 2
bindarray参数绑定
fieldsstring默认为 COUNT(*)
assign
string操作数据库,主master、从slave

sql_total - 统计字段值

sql_total([
    "table"  => "",
    "where"  => "",
    "order"  => "",
    "bind"   => [],
    "fields" => "",
    "limit"  => [],
]);
字段字符类型必填说明
tablestring数据表名称,不含前缀
wherestring查询条件 a = 1 AND b = 2
orderstring排序 id DESC, order_no ASC
bindarray参数绑定
fieldsstring支持SUM、COUNT、AVG、MAX、MIN
limitstring|arraystring/10:获取10条数据;array/[0,10]:获取第0-10条数据
assign
string操作数据库,主master、从slave

sql_insert_id - 最后插入的数据ID

sql_insert_id();

sql_affected_rows - 上一次操作的条数

sql_affected_rows();

sql_error - 上一次操作错误说明

可以用来判断上一条数据表操作是否成功,失败会有返回错误信息,成功则返回空。

sql_error();

sql_errno - 上一次操作错误编号

sql_errno();

事务操作

//第一步:开启事务
sql_begin();

//第二步:你需要的sql操作
//sql_get(); sql_update(); 等等

//第三步:提交事务,return true or false
sql_commit();

//如果mysql语句中有错误,提交事务时会自动回滚,如果是其中方法有错误,需要手动回滚
sql_rollback();
大纲