thinkphp5 数据库操作(1)

基本使用:使用\think\Db类我们就可以直接使用数据库运行原生SQL操作了,支持query(查询操作)execute(写入操作)方法。

查询构造器

查询数据:

查询一个数据使用

// table方法必须指定完整的数据表名

  Db::table('think_user')->where('id',1)->find();

查询数据集使用:

Db::table('think_user')->where('status',1)->select();

如果设置了数据表前缀参数的话,可以使用

Db::name('user')->where('id',1)->find();
Db::name('user')->where('status',1)->select();

助手函数

db('user')->where('id',1)->find();
db('user')->where('status',1)->select();

值和列查询

查询某个字段的值可以用

// 返回某个字段的值
Db::table('think_user')->where('id',1)->value('name');

查询某一列的值可以用

// 返回数组
Db::table('think_user')->where('status',1)->column('name');// 指定索引
Db::table('think_user')->where('status',1)->column('name','id');
Db::table('think_user')->where('status',1)->column('id,name'); // 同tp3的getField

添加数据

添加一条数据

$data = ['foo' => 'bar', 'bar' => 'foo'];
Db::table('think_user')->insert($data);

insert 方法添加数据成功返回添加成功的条数,insert 正常情况返回 1

添加数据后如果需要返回新增数据的自增主键,可以使用getLastInsID方法:

Db::name('user')->insert($data);
$userId = Db::name('user')->getLastInsID();

或者直接使用insertGetId方法新增数据并返回主键值

添加多条数据

$data = [
    ['foo' => 'bar', 'bar' => 'foo'],
    ['foo' => 'bar1', 'bar' => 'foo1'],
    ['foo' => 'bar2', 'bar' => 'foo2']];
Db::name('user')->insertAll($data);

 

posted @ 2020-04-23 16:15  狂鸟·凡尘  阅读(324)  评论(0)    收藏  举报