Laravel 数据库操作总结

使用多个数据库

  1. 单个查询使用
    DB::connection( <数据库配置名> );
  2. 更改默认数据库
    DB::setDefaultConnection( <数据库配置名> );

原生语句

  1. 查询

    DB::select('select * from users where id = ?', [1]);
    DB::select('select * from users where id = :id', ['id' => 1]);

    select 返回一个数组,数组中的每条记录是一个 StdClass 对象

  2. 更新、删除

    DB::update('update users set votes = 100 where name = ?', ['John']);
    DB::delete('delete from users');

    updatedelete 返回影响的行数

  3. 通用语句

    DB::statement('drop table users');
  4. 事务

    # 自动回滚或提交
    DB::transaction(function () {
        <...>
    }, [ 死锁时最大重试次数 ] );
    
    # 手动
    DB::beginTransaction();
    DB::rollBack();
    DB::commit();

    查询构造

    多维数据筛选

  5. 所有数据 get

    ->get()

一维数据筛选

  1. 获取第一条 first
    ->first()
  2. 获取一列 pluck
    ->pluck( <字段名> )
    ->pluck( <值字段名>, <键字段名> )

单个值查询

  1. 单值 value
    ->value( <字段名> )
    <未完>