博主信息
博文 46
粉丝 1
评论 1
访问量 37508
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
Table(),field(),order(),where(),limit(),insert(),insertAll(),update(),delete(),以及如何获取自增主键和数据打包方法data()--2018年5月23日
笨鸟先飞
原创
861人浏览过

实例

<?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举报处理!
全部评论 文明上网理性发言,请遵守新闻评论服务协议
0条评论
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习
PHP中文网抖音号
发现有趣的

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号

  • 登录PHP中文网,和优秀的人一起学习!
    全站2000+教程免费学