亚洲国产日韩欧美一区二区三区,精品亚洲国产成人av在线,国产99视频精品免视看7,99国产精品久久久久久久成人热,欧美日韩亚洲国产综合乱

我創(chuàng)建的數(shù)據(jù)庫(kù)的增刪改實(shí)例

原創(chuàng) 2019-06-14 14:51:54 217
摘要:<?php/** * Created by PhpStorm. * User: cloud * Date: 2019/4/12 * Time: 10:03 */namespace app\index\controller;use think\Db;/* * 查詢構(gòu)造器 * 準(zhǔn)備工作:app_debug='true';app_trace='true' 應(yīng)用的開(kāi)關(guān)

<?php
/**
* Created by PhpStorm.
* User: cloud
* Date: 2019/4/12
* Time: 10:03
*/

namespace app\index\controller;

use think\Db;

/*
* 查詢構(gòu)造器
* 準(zhǔn)備工作:app_debug='true';app_trace='true' 應(yīng)用的開(kāi)關(guān)要打開(kāi)  這兩個(gè)開(kāi)關(guān)在  \config\app.php中
* 系統(tǒng)的學(xué)習(xí)數(shù)據(jù)庫(kù)的 增刪改查  CURD
* */

class Demo5
{
//1、單條查詢
   public function find()
   {
//        DB類(lèi)是數(shù)據(jù)庫(kù)操作入口類(lèi),功能是 靜態(tài)調(diào)用think\db\Query.php類(lèi)中的查詢方法實(shí)現(xiàn)基本操作
//        table 選擇數(shù)據(jù)表,必須給一個(gè)完整的表名
//        field('id','name','email') 只查詢符合條件中的 id,name,email 三個(gè)內(nèi)容即可,用于設(shè)置返回的字段數(shù)量或別名
//        where('id','=',4) 查詢表達(dá)式,設(shè)置查詢條件|對(duì)于單個(gè)條件使用表達(dá)式;對(duì)于多個(gè)條件使用數(shù)組
//        find() 方法查詢,是返回符合條件的第一條記錄,若無(wú)記錄符合,則返回null
//        結(jié)果是一個(gè)一維數(shù)組
       $res = Db::table('mt_student')
//            -> field('id','name','email')
           ->where('id', '=', 2)
           ->find();

//        is_null($res) ? '沒(méi)有找到' : '$res' 判斷$res是否為空,為空,顯示沒(méi)有找到,非空,顯示$res;
       dump(is_null($res) ? '沒(méi)有找到' : '$res');


//        生成的sql語(yǔ)句
//        SELECT * FROM 'mt_student' WHERE 'id' = 4 LIMIT 1
//        SELECT 'id','name','email' FROM 'mt_student' WHERE 'id' = 4 LIMIT 1
//        SELECT 'id' AS '編號(hào)','name' AS '姓名','email' AS '郵箱' FROM 'mt_student' WHERE 'id' = 4 LIMIT 1


       /*
        * $res = Db::table('mt_student')
           -> field(['id'=>'編號(hào)','name'=>'姓名','email'=>'郵箱'])
           -> where('id',4) //如果是相等關(guān)系,等號(hào)是可以省略的
           -> find(); //如果是根據(jù)主鍵查詢的話,是可以省略 where(),直接 ->find(4)來(lái)代替-> where('id',4) //如果是相等關(guān)系,等號(hào)是可以省略的
           -> find()
       */

   }











   /*
    * 2、多條查詢
    * */

   public function select()
   {
//        select()返回的是一個(gè)二維數(shù)組,沒(méi)有數(shù)據(jù)返回一個(gè)空數(shù)據(jù)
       $res = Db::table('mt_student')
           -> field ('id,name,course,grade')
           -> where ([
               ['course','=','php'],
               ['grade','>=',80]
           ]) -> select();

       if(empty($res)){
           return '沒(méi)有滿足條件的記錄';
       }else{
           foreach ($res as $row){
               dump($row);
           }
       }

   }









//    3、單條插入

   public function insert()
   {
//        insert()成功返回插入的數(shù)量,即新增的數(shù)量;失敗返回false
//        準(zhǔn)備一下要插入的數(shù)據(jù),放在一個(gè)數(shù)組data中
       $data = [

           'name' => '洪七公3',
           'email' => '777@email.com',
           'course' => 'java',
           'grade' => '86'
       ];

//        return Db::table('mt_student')-> insert($data); //普通插入一條數(shù)據(jù)
//        return Db::table('mt_student')-> insert($data,true); //可以替換更新一條數(shù)據(jù)內(nèi)容
//        return Db::table('mt_student') -> data($data) -> insert(); //data()方法可以做一些最基本的過(guò)濾


//        插入的同時(shí)返回新增主鍵ID
//        insertGetId()執(zhí)行兩步操作, 第一步插入數(shù)據(jù),第二步返回新生的主鍵ID
       return Db::table('mt_student')-> insertGetId($data);



   }







//    4、多條插入
   public function insertAll()
   {
       $data = [
           ['name'=>'peter','email'=>'php@php.cn'],
           ['name'=>'jack','email'=>'j@php.cn'],
           ['name'=>'black','email'=>'b@php.cn'],
       ];

       return Db::table('mt_student')-> insertAll($data);

   }








//    5、更新操作:一定有更新條件;如果成功,返回更新成功,并顯示更新x條;如果失敗,顯示false; 不支持 data()方法;
       public function update()
       {
//            return Db::table('mt_student')
//                -> where('id',4)
//                -> update(['name'=>'西門(mén)慶']);

//            如果更新條件是主鍵ID,可以簡(jiǎn)寫(xiě)
           return Db::table('mt_student')
               -> update(['id'=>'5','name'=>'小金蓮']);
       }







//        6、刪除操作
   public function delete()
   {
//        return Db::table('mt_student')
//            -> delete(11);

       return Db::table('mt_student')
           -> where('id',12)
           -> delete();
   }
















//    原生查詢:
   public function query()
   {
       $sql="SELECT `name`,`email` FROM `mt_student` WHERE id IN (4,5,6)";
       dump(Db::query($sql));
   }



//    原生寫(xiě)操作:更新、刪除,添加
   public function execute()
   {
//        return Db::execute("UPDATE `mt_student` SET `name`='武松' WHERE `id`=13 ");
//        return Db::execute("INSERT `mt_student` SET `name`='張飛' ");
       return Db::execute("DELETE FROM `mt_student` WHERE `name`='張飛' ");
   }






}

批改老師:天蓬老師批改時(shí)間:2019-06-14 15:07:27
老師總結(jié):TP5.1的軟刪除, 本質(zhì)上更新操作, 框架提供的方式比較繁瑣, 建議在開(kāi)發(fā)中, 通過(guò)自行定義來(lái)解決比較高效....

發(fā)佈手記

熱門(mén)詞條