Db類增刪改查操作

<?php

namespace app\index\controller;

use think\Db;

/**

  • 查詢構(gòu)造器
  • 準(zhǔn)備工作: 'app_debug'=>true; 'app_trace'=>true;
  • 系統(tǒng)學(xué)習(xí)數(shù)據(jù)庫的增刪改查操作: CURD
    /
    class Demo5
    {
    //1.單條查詢
    public function find()
    {
    /
    *
    • Db類數(shù)據(jù)庫操作的入口類
    • 功能: 靜態(tài)調(diào)用think\db\Query.php類中的查詢方法實(shí)現(xiàn)基本操作
    • table(): 選擇數(shù)據(jù)表
    • where(): 設(shè)置查詢條件 表達(dá)式: 數(shù)據(jù)
      1. 單個條件 使用表達(dá)式
      1. 多個條件 使用數(shù)組
    • find() 返回符合條件的第一條記錄,沒有的話返回null
      */
      res = Db::table('imooc_user') ->field(['id', 'password' => 'pass']) //設(shè)置別名 // ->where('id', 5) ->find(8); //如果主鍵查詢,可省略where() dump(is_null(res) ? '沒有找到' : $res);
      }
//2.查詢數(shù)據(jù)
public function select()
{
  $res = Db::table('imooc_user')
      ->field('id,name,password')
      ->where([
          ['id', '>', 5],
          ['name', '=', 'imooc']
      ])
      ->select();
  if (empty($res)) {
    return '沒有滿足條件的記錄';
  } else {
    foreach ($res as $v) {
      dump($v);
    }
  }
}

//3.單條插入
public function insert()
{
  //insert() 成功返回新增的數(shù)量,失敗返回false
  //準(zhǔn)備一下要插入的數(shù)據(jù)
  $data = [
      'name' => "imooc3",
      'password' => md5("imooc"),
      'create_time' => time(),
      'update_time' => time(),
  ];

// return Db::table('imooc_user')->insert(data, ); //只有數(shù)據(jù)庫類型為mysql的時候才可以傳入第二個參數(shù) true // return Db::table('imooc_user')->insert(data, true);
// return Db::table('imooc_user')->data(data)->insert(); //插入的同時返回新增主鍵ID //insertGetId() 同時執(zhí)行兩步: 第一步插入,第二步返回主鍵ID return Db::table('imooc_user')->insertGetId(data);
}

//4.添加多條
public function insertAll()
{
  $data = [];
  for ($i = 1; $i < 20; $i++) {
    $data[] = [
        'name' => "imooc{$i}",
        'password' => md5("imooc{$i}"),
    ];
  }
  return Db::table('imooc_user')->insertAll($data);
}

//5.更新操作
public function update()
{
  //update() 必須要有更新條件,返回影響的行數(shù)

// return Db::table('imooc_user')
// ->where('id', 43)
// ->update([
// 'name' => 'lzqlzqlzq'
// ]);
//如果更新條件是主鍵的話,可以直接把主鍵寫到更新數(shù)組中
return Db::table('imooc_user')
->update([
'id' => '44',
'name' => 'lzqlzqlzq'
]);
}

//6.刪除操作
public function delete()
{

// return Db::table('imooc_user')
// ->delete(44);
return Db::table('imooc_user')
->where('id', 45)
->delete();
}

//7.原生查詢
public function query()
{
  $sql = "SELECT `id`,`name` FROM `imooc_user` WHERE id IN (11,12)";
  $res = Db::query($sql);
  dump($res);
}

//原生寫操作: 更新; 刪除; 添加
public function execute()
{
  //更新操作

// return Db::execute("UPDATE imooc_user SET name='lzqlzqlzq' WHERE id = 50");
//插入操作
// return Db::execute("INSERT INTO imooc_user (name,password) values ('lzq',123123)");
//刪除操作
return Db::execute("DELETE FROM imooc_user WHERE name='lzqlzqlzq'");
}
}

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容