1. <?php
  2. namespace app\index\controller;
  3. use think\Controller;
  4. use think\Db;
  5. class Test extends Controller
  6. {
  7. public function index()
  8. {
  9. $name ="Hello word TP5";
  10. $this->assign('name',$name);
  11. return $this->fetch();
  12. }
  13. public function select()
  14. {
  15. //增
  16. //$res = DB::name('lee_user')->insert(['uname'=>'lpc']);
  17. $res = DB::execute("insert into lee_user(uname) values(:uname) ",['uname'=>'tp5']);
  18. //删
  19. //$res = DB::name('lee_user')->delete(3);//括号里默认是ID
  20. //$res = DB::name('lee_user')->delete(['uname'=>5]);//这个就执行成功啦,删除ID是5的
  21. //$res = DB::name('lee_user')->delete('uname'=>2);//这就没执行成功
  22. 30 //改
  23. // $res = DB::query(" update lee_user set uname='23' where uid = 4");
  24. //查询
  25. // $data = DB::name('lee_user')->find();//这查单条的
  1.       // $data = DB::name('lee_user')->select();//这查的是数组
  1. // $this->assign('data',$data); //return $this->fetch('add');
          //链式查法
  2. $data = DB::name('lee_user')
                ->where('uname','tp5')
                ->field('uid,uname')
                ->limit('1')
                ->select();
             $this->assign('data',$data);
             return $this->fetch('index');
        }
  3.     //测试事务
      //试了半天没效果,回头一看数据库这个表类型是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']);
            // });
  4.         //手动控制事务提交
            //启动事务
            Db::startTrans();
            try{
                Db::table('lee_user')->find(7);
                Db::table('lee_user')->delete(8);
                // 提交事务   
                Db::commit();
            } catch (\Exception $e) {
                // 回滚事务
                Db::rollback();
            }
        }
  5. }

[PHP][thinkphp5] 学习一:增删改查的更多相关文章

  1. JDBC学习笔记——增删改查

    1.数据库准备  要用JDBC操作数据库,第一步当然是建立数据表: ? 1 2 3 4 5 6 CREATE TABLE `user` (   `id` int(11) NOT NULL AUTO_I ...

  2. jdbc编程学习之增删改查(2)

    一,enum类型的使用 在SQL中没有布尔类型的数据,我们都使用过布尔类型,当属性的值只用两种情况时.例如性别等.那在数据库对这些属性的值个数比较少时我们应该使用什么数据类型呢?SQL给我们提供了枚举 ...

  3. MongoDB学习之--增删改查(1)

    本文是对mongodb学习的一点笔记,主要介绍最简单的增删改操作,初学,看着API,有什么错误,希望大家指正:(使用官方驱动) 1.增 增加操作是最简单的,构造bsonDcument插入即可: 方式1 ...

  4. MongoDB学习之--增删改查(2)

    昨天简单介绍了官方驱动操作MongoDB进行增删查操作的,今天继续介绍更新操作..... 方法简介 官方驱动中更新操作使用collection的Update方法,有泛型和非泛型两个版本: 其签名如下( ...

  5. 二、Django学习之增删改查

    增加数据 第一种方式 def index(request): #创建记录方式1 #实例化要添加的记录(对象) student_obj = models.Student( name='dazhuang' ...

  6. MySQL学习笔记——增删改查

    有关数据库的DML操作 -insert into -delete.truncate -update -select -条件查询 -查询排序 -聚合函数 -分组查询 DROP.TRUNCATE.DELE ...

  7. Entity Framework学习 - 2.增删改查

    1.增加数据 PirateBayEntities db = new PirateBayEntities(); T_Tests test = new T_Tests(); test.Name = &qu ...

  8. Mybatis学习——基本增删改查(CRUD)

    Eclipse+Mybatis+MySql 1.所需jar 2.项目目录 3.源代码 package com.zhengbin.entity; public class Student { priva ...

  9. hibernate框架学习之增删改查helloworld

    插入数据删除数据修改数据查询单条数据查询多条数据 HelloWorldApp.java package cn.itcast.h3.helloworld; import org.hibernate.Se ...

  10. Android学习--------实现增删改查数据库操作以及实现相似微信好友对话管理操作

    版权声明:本文为博主原创文章,转载请注明原文地址.谢谢~ https://blog.csdn.net/u011250851/article/details/26169409 近期的一个实验用到东西挺多 ...

随机推荐

  1. 用序列到序列和注意模型实现的:Translation with a Sequence to Sequence Network and Attention

    In this project we will be teaching a neural network to translate from French to English. 最后效果: [KEY ...

  2. 二、sudo su root 和sudo su -的区别

    1.使用sudo su root可以快速切换为root用户,输入密码后输pwd可以看到它还是在主目录下即/home/sdbi 显示为:用户名@主机名:/home/sdbi#即root@linux:/h ...

  3. redis++:Redis的两种持久化 RDB 和 AOF

    Redis持久化备份数据的方式有两种:RDB(Redis DataBase) . AOF(Append Only  File). RDB 什么是RDB: 在指定时间间隔内,将内存中的数据集快照写入磁盘 ...

  4. Feign客户端实现RPC 调用

    1,springcloud 中支持http调用的两种方式,RestTemplate,Feign客户端 2,Feign 客户端是一个声明式(注解方式)http 远程调用工具 3,实现方式如下: 第一步: ...

  5. python实现十大经典排序算法

    Python实现十大经典排序算法 代码最后面会给出完整版,或者可以从我的Githubfork,想看动图的同学可以去这里看看: 小结: 运行方式,将最后面的代码copy出去,直接python sort. ...

  6. 深度使用JSON.stringify()

    按照 JSON 的规范,使用 JSON.stringify() 做对象序列化时,如果一个属性为函数,那这个属性就会被忽略. const data1 = { a: 'aaa', fn: function ...

  7. 对oracle里面clob字段里面xml的增删改查学习

    这段时间,我使用系统表里面有clob字段里面存放的xml信息,我们如何对xml进行增删改查操作呢,自己参考了很多也学到很多,给大家分享一下 首先我们先建测试表 CREATE TABLE EFGP_23 ...

  8. iOS 编程之UIWindow切换

    由于最近项目需要制作一个可定制的底部弹窗效果,因此研究了一下UIActionSheet,打算重写一个自定义的弹窗,在写demo的时候出于偷懒的原因,直接在新建项目的 - (void)viewDidLo ...

  9. Docker基础修炼1--Docker简介及快速入门体验

    本文作为Docker基础系列第一篇文章,将详细阐述和分析三个问题:Docker是什么?为什么要用Docker?如何快速掌握Docker技术? 本系列文章中Docker的用法演示是基于CentOS7进行 ...

  10. jenkins集成sonarQube实现代码质量检查

    1.sonarQube的简介 SonarQube是一款自动化代码审查工具,用于检测代码中的错误.漏洞和代码异味.它可以与你现有的工作流集成,以支持跨项目分支和拉取请求的连续代码检查. 其工作流程如下: ...