牛骨文教育服务平台(让学习变的简单)
博文笔记

thinkphp调用存储过程的完整案例

创建时间:2016-12-09 投稿人: 浏览次数:3987

()1,使用navicate 新建一张表,表结构如下

这里写图片描述

2.创建一个存储过程(注意如果输入输出类型是字符串 一定要加上长度 否则报错 如下面的 c_name varchar(255))

DROP PROCEDURE IF EXISTS `abc`;

CREATE  PROCEDURE `abc`(IN `c_id` int,OUT `c_name` varchar(254),OUT `c_age` int)
BEGIN
    #Routine body goes here...
SELECT name,age into c_name,c_age from m_test WHERE id=c_id;

END;

3,在控制器类新建一个测试方法

这里写图片描述

     function t1(){
        M()->execute("call abc(1,@c_name,@c_age)");
        var_dump(M()->query("select @c_name as c_name,@c_age as age"));
     }

浏览器测试(成功啦)
这里写图片描述

声明:该文观点仅代表作者本人,牛骨文系教育信息发布平台,牛骨文仅提供信息存储空间服务。