1在MySQL中创建存储过程

a 我将添加和修改 作为 一起

CREATE DEFINER=`root`@`%` PROCEDURE `p_boss_role_save`(IN `_id`   CHAR(36),      IN `in_league_id` char(36),      IN `in_name` varchar(255),       IN `in_description` varchar(255))
BEGIN
IF EXISTS (SELECT 1 FROM t_boss_role WHERE id = _id)
THEN
UPDATE t_boss_role SET league_id=in_league_id,name=in_name,description=in_description WHERE id = _id;
ELSE
SET _id=UUID();
INSERT INTO t_boss_role(id, league_id, name, description,is_enabled,is_deleted)
VALUES(_id, in_league_id, in_name, in_description,1,0);
END if;
SELECT _id; -- 返回最后查询的id
END

2 php添加和修改的调用

  $cmd = \Yii::$app->db->createCommand('CALL p_boss_role_save(:id,:leagueId,:name,:description)');
$cmd->bindValue(':id',$id);
$cmd->bindValue(':leagueId',$leagueId);
$cmd->bindValue(':name',$name);
$cmd->bindValue(':description',$description);
return $cmd->queryScalar();

3.1 创建 删除 的存储过程  逻辑删除

CREATE DEFINER=`root`@`%` PROCEDURE `p_boss_role_delete`(IN `_id` CHAR(36))
BEGIN
UPDATE t_boss_role SET is_deleted = 1 WHERE id = _id;
END

4.1 php调用

 $cmd = \Yii::$app->db->createCommand('CALL p_boss_role_save(:id)');
$cmd->excute();

php+MySQL(存储过程) +yii2完整的增删改查的更多相关文章

  1. MYSQL - database 以及 table 的增删改查

    MYSQL - database 以及 table 的增删改查 MySQL的相关概念介绍 MySQL 为关系型数据库(Relational Database Management System), 这 ...

  2. 使用JDBC分别利用Statement和PreparedStatement来对MySQL数据库进行简单的增删改查以及SQL注入的原理

    一.MySQL数据库的下载及安装 https://www.mysql.com/ 点击DOWNLOADS,拉到页面底部,找到MySQL Community(GPL)Downloads,点击 选择下图中的 ...

  3. MySQL数据库之表的增删改查

    目录 MySQL数据库之表的增删改查 1 引言 2 创建表 3 删除表 4 修改表 5 查看表 6 复制表 MySQL数据库之表的增删改查 1 引言 1.MySQL数据库中,数据库database就是 ...

  4. MYSQL的常用命令和增删改查语句和数据类型

    连接命令:<a href="http://lib.csdn.net/base/mysql" class='replace_word' title="MySQL知识库 ...

  5. MYSQL的常用命令和增删改查语句和数据类型【转】

    连接命令:<a href="http://lib.csdn.net/base/mysql" class='replace_word' title="MySQL知识库 ...

  6. SQL学习之MYSQL的常用命令和增删改查语句和数据类型

    连接命令:mysql -h[主机地址] -u[用户名] -p[用户密码] 创建数据库:create database [库名] 显示所有数据库: show databases; 打开数据库:use [ ...

  7. MySQL 之基础操作及增删改查等

    一:MySQL基础操作 使用方法: 方式一: 通过图型界面工具,如 Navicat,DBeaver等 方式二: 通过在命令行敲命令来操作 SQL ( Structure query language ...

  8. node+mysql,实现基本的增删改查,附带跟踪记录和运行时间记录

    Node + mysql 实现基础的增删改查,以及性能测试. 网上有很多这样的例子,我也是找来学习的. 感觉node对mysql的操作非常简单,也很实用,比如自带防止sql注入的功能,一开始还担心注入 ...

  9. 进入全屏 nodejs+express+mysql实现restful风格的增删改查示例

    首先,放上项目github地址:https://github.com/codethereforam/express-mysql-demo 一.前言 之前学的java,一直用的ssm框架写后台.前段时间 ...

随机推荐

  1. Html+CSS二周目--->常用概念

    学习css几乎俩周,来总结一下 对于初学者来说,有一些基本的概念是我们应当清楚的.掌握这些概念,可以帮助你更加有效的开发,大大提高开发效率. 1.盒子模型 2.浮动(float) 3.定位(posit ...

  2. 粗看ES6之面向对象写法

    标签: es6 在es6以前,js没有类的概念,虽然有构造函数原型的方式用来做面向对向开发,但是对于书法并不是十分友好,而且对于继承实现也不是十分友好. es6引入class constructor ...

  3. TP5.0搭建restful API 应用

    1.配置环境变量,如果没配置会显示如下错误. 配置方法 1)右键此电脑-> 属性-> 高级系统设置->环境变量->Path 2)在Path后加上php目录的名称 如:E:\PH ...

  4. POS开发问题 - 缓存问题 - 02

    问题描述 : 有一个A页面使用了缓存,当从别的页面返回到A页面时, A页面绑定的有些事件,例如监听输入框输入事件:"input",监听点击触摸屏事件:"touchstar ...

  5. Android修改AlertDialog宽和高以及设置AlertDialog的背景

    不知道你们试过了吗,AlertDialog在我们给他设置我们自己的布局的时候他的宽度不论我们怎么设置他都是不变的,要想改变宽和高我们可以动态的去修改他的宽度好高度 直接上代码 // 1. 布局文件转换 ...

  6. 微软RPC技术学习小结

    RPC,即Remote Procedure Call,远程过程调用,是进程间通信(IPC, Inter Process Communication)技术的一种.由于这项技术在自己所在项目(Window ...

  7. TeamViewer安装使用

    1.下载安装包 官网下载最新安装包 2.安装步骤 3.连接 输入密码即可控制伙伴电脑.

  8. js&jquery:添加事件的三种方法和常用的一些事件

    一.添加事件的方法 1.EventTarget.addEventListener添加 获取事件目标元素,通过addEventListener函数添加 // Assuming myButton is a ...

  9. C#队列Queue,利用队列处理订单

    一.什么是队列 队列(Queue)代表了一个先进先出的对象集合.当您需要对各项进行先进先出的访问时,则使用队列.当您在列表中添加一项,称为入队,当您从列表中移除一项时,称为出队. 这是摘抄网上的.做了 ...

  10. Microsoft EDP(enterprise database protection)配置策略中的三种Rule template

    搭建Microsoft EDP环境: Microsoft 10 insider preview,Microsoft Intune,ie10(要安装插件silverlight) 这里暂时只说在进行配置策 ...