[PHP][thinkphp5] 學習一:增刪改查

 1 <?php  2 namespace app\index\controller;  3  4 use think\Controller;  5 use think\Db;  6  7 class Test extends Controller  8 {  9 10 public function index() 11  { 12 $name ="Hello word TP5"; 13 14 $this->assign('name',$name); 15 16 return $this->fetch(); 17  } 18 19 public function select() 20  { 21  //增 22  //$res = DB::name('lee_user')->insert(['uname'=>'lpc']); 23 $res = DB::execute("insert into lee_user(uname) values(:uname) ",['uname'=>'tp5']); 24 25 //刪 26  //$res = DB::name('lee_user')->delete(3);//括號裏默認是ID 27  //$res = DB::name('lee_user')->delete(['uname'=>5]);//這個就執行成功啦,刪除ID是5的 28  //$res = DB::name('lee_user')->delete('uname'=>2);//這就沒執行成功 29  30 //改 31  // $res = DB::query(" update lee_user set uname='23' where uid = 4"); 32 35 //查詢 36  // $data = DB::name('lee_user')->find();//這查單條的
      // $data = DB::name('lee_user')->select();//這查的是數組
37  // $this->assign('data',$data); 38  //return $this->fetch('add');
      //鏈式查法
39 $data = DB::name('lee_user')
            ->where('uname','tp5')
            ->field('uid,uname')
            ->limit('1')
            ->select();
         $this->assign('data',$data);
         return $this->fetch('index');
    }

    //測試事務
  //試了半天沒效果,回頭一看數據庫這個表類型是MyISAM,不支持事務!
  //因此首先肯定表支不支持事務
  //該表類型命令: ALTER TABLE  代表 ENGINE=INNODB;

    public function traction()
    {
       //TP5框架事務
        // Db::transaction(function(){
        //     DB::name('lee_user')->delete(6);
        //     DB::name('lee_user')->insert(['uname'=>'tranction']);
        // });

        //手動控制事務提交
        //啓動事務
        Db::startTrans();
        try{
            Db::table('lee_user')->find(7);
            Db::table('lee_user')->delete(8);
            // 提交事務   
            Db::commit();
        } catch (\Exception $e) {
            // 回滾事務
            Db::rollback();
        }

    }
40 }
相關文章
相關標籤/搜索