zoukankan      html  css  js  c++  java
  • [PHP][thinkphp5] 学习一:增删改查

     1 <?php
     2 namespace appindexcontroller;
     3 
     4 use thinkController;
     5 use thinkDb;
     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 }
  • 相关阅读:
    大爆炸集成 Big Bang
    How:怎么做集成测试
    Where:对什么部分做集成测试
    web预览图片
    对象的属性赋值
    Web请求
    Sql Server 获取数据库最近执行的操作
    服务安装脚本
    生成并保存二维码图片,此方法最清晰
    c# get,set设置默认值
  • 原文地址:https://www.cnblogs.com/lipcblog/p/6846523.html
Copyright © 2011-2022 走看看