博客列表 >查询构造器中最常用的10个方法,获取自增主键和数据打包方法——2018年5月23日作业

查询构造器中最常用的10个方法,获取自增主键和数据打包方法——2018年5月23日作业

白猫警长的博客
白猫警长的博客原创
2018年05月25日 23:52:11734浏览

实例

<?php
namespace app\index\controller;
use think\Db;

class Query
{
	public function finnd()
	{
		//查询单条记录
		$res = Db::table('member')
			//将字段写在数组中的好处是:可以给每个字段起个别名
			->field(['member_name'=>'账号','level'=>'等级','bin_qq'=>'QQ','balance'=>'余额','time'=>'时间'])	
			->where('member_id','=',3)	//where(字段,表达式,条件)  相等的情况下,表达式可以省略。
			->find();

		dump($res);
	}

	public function select()
	{
		//查询满足条件的多条记录
		$res = Db::table('member')
			->field(['member_name'=>'账号','level'=>'等级','bin_qq'=>'QQ','balance'=>'余额','time'=>'时间'])	//查询字段
			->where('balance','>',100)	//查询余额大于100的会员信息
			->order('balance','DESC')	//进行降序排序
			->limit(1)		//限制显示数量
			->select();

		dump($res);
	}

	// public function insert()
	// {
		//新增单条记录
		// $data = [
		// 	'member_name' => '小李飞刀',
		// 	'level' => '普通会员',
		// 	'bin_qq' => 6577999,
		// 	'balance' => 123
		// ];

		// $id = Db::table('member')->insertGetId($data);
		// return $id ? '添加成功,id='.$id : '没有记录被添加';


		//新增多条记录用:insertAll()
	// 	$data = [
	// 		['member_name'=>'张三', 'level'=>'VIP会员', 'bin_qq'=>879887, 'balance'=>544],
	// 		['member_name'=>'李四', 'level'=>'代理会员', 'bin_qq'=>43535, 'balance'=>129],
	// 		['member_name'=>'王五', 'level'=>'普通会员', 'bin_qq'=>678768, 'balance'=>84.49]
	// 	];
	// 	$num = Db::table('member')->data($data)->insertAll();
	// 	return $num ?'成功添加了id='.$num.'条记录' : '没有记录被添加';
	// }

	public function update()
	{
		//更新操作:必须基于前置查询,不允许无条件更新
		//更新操作使用update(),也是一种终极方法

		$num = Db::table('member')
			->where('balance','>=',5000)
			->data(['balance'=> Db::raw('balance+101')])		//在原来的金额上直接增加101
			->update();

		return $num ? '成功更新了'.$num.'条记录' : '没有记录被更新';
	}

	public function delete()
	{
		//删除操作也是基于前置查询,不允许无条件删除
		$num = Db::table('member')
			->where('balance','>',5000)		//删除条件:将金额大于5000的用户删除
			->delete();

		//方法二:如果想一张表全部清空直接在delete中传入true。此方法一但删除无法恢复,最好采用软删除来实现
		// $num = Db::table('member')->delete(true);	

		return $num ? '成功删除了'.$num.'条记录' : '没有记录被删除';
	}
}

运行实例 »



声明:本文内容转载自脚本之家,由网友自发贡献,版权归原作者所有,如您发现涉嫌抄袭侵权,请联系admin@php.cn 核实处理。
全部评论
文明上网理性发言,请遵守新闻评论服务协议