博客列表 >Table(),field(),order(),where(),limit(),insert(),insertAll(),update(),delete(),以及如何获取自增主键和数据打包方法data()--2018年5月23日

Table(),field(),order(),where(),limit(),insert(),insertAll(),update(),delete(),以及如何获取自增主键和数据打包方法data()--2018年5月23日

笨鸟先飞
笨鸟先飞原创
2018年05月24日 18:39:54685浏览

实例

<?php 
namespace app\index\controller;

use think\Db;

class Query
{
	public function find()
	{
		//读操作返回的都是二维数组,没有满足调价的记录,返回的是一个空数
		//写操作返回的是受影响的记录数量,如果没有则返回0
		

		//查询单条记录
		$res = Db::table('staff')//查询的表名
		     ->field(['name' => '姓名','sex' => '性别','age' => '年龄'])//用数组的好处:可以给字段加上一个 别名
		     ->where('id','>=',10)//查询条件   格式:字段,等式,值
		     ->find();
        dump($res);
	}



	public function select()
	{
		//查询多条记录
		$res = Db::table('staff')

		      // ->where('sex','=',0)
		      ->where('age','>=',30)
		      // ->where('age>=30')
              ->field(['name' =>'姓名','age'=>'年龄','id'=>'编号'])
              // ->order('age desc')
              ->order('age','desc')
              ->limit(5)
              ->select();

        dump($res);      
	}


	public function insertAll()
	{

		//新增单条记录
		// $data = [
		//     'name'=>'武松',
		//  	'sex'=>0,
		//  	'age'=>30,
		//  	'phone_number'=>15785426
		//  ];

		 // $num = Db::table('staff') ->insert($data);
		 // $id = Db::getLastInsID();
		 // return $num ? '新增'.$num.'条记录,ID='.$id : '没有记录被添加';

		  //data($data):将要处理的数据打包 $option[]
		 //insertGetId() == insert() + getLastInsID()
		  

		 // $id = Db::table('staff')->insertGetId($data);
		 // return $id ? '新增记录,ID='.$id : '没有记录被添加';
		 

		 // $num = Db::table('staff') ->data($data)->insert();
		 // $id = Db::getLastInsID();
		 // return $num ? '新增'.$num.'条记录,ID='.$id : '没有记录被添加';
		 // 
		 // 
		  $data = [
		  	['name'=>'唐僧','sex'=>0,'age'=>50,'phone_number'=>1568798452],
		  	['name'=>'孙悟空','sex'=>0,'age'=>48,'phone_number'=>1568798452],
		  	['name'=>'猪八戒','sex'=>0,'age'=>45,'phone_number'=>1568798452],
		  	['name'=>'沙僧','sex'=>0,'age'=>42,'phone_number'=>1568798452]
		  ];

	     $num = Db::table('staff')->data($data)->insertAll();
		 return '新增'.$num.'条记录';
    }


    public function update()
    {
    	//更新操作必须是基于前置查询,不允许无条件更新
    	//
    	//将年龄小于25岁都加上10岁
    // $num = Db::table('staff')
    // 	->where('age','<=',25)
    // 	->data(['age'=>Db::raw('age+10')])
    // 	->update();
    // 	
        $num = Db::table('staff')->where(['name'=>'唐僧'])->update(['id'=>23]);
    	 return $num ? '更新'.$num.'条记录' : '没有记录被更新';
    }



    public function delete()
    {
    	//删除也必须基于前置查询,不允许无条件删除
    	$num = Db::table('staff')
    	     ->where('id','>=',30)
    	     ->delete();
    	 return $num ? '删除'.$num.'条记录' : '没有记录被删除';
    }
}

运行实例 »

点击 "运行实例" 按钮查看在线实例


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