在Laravel 4中的插入查询存储过程中传递参数 [英] pass parameters in insert query stored procedure in laravel 4

查看:71
本文介绍了在Laravel 4中的插入查询存储过程中传递参数的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我已经创建了一个插入过程,但是不知道如何在控制器和模型中调用参数名称"和路径"

I have created a procedure for insertion but dont know how to call parameters "name" and "path" in controller and model

存储过程:

CREATE DEFINER=`root`@`localhost` 
     PROCEDURE `insert_document_details`
        (IN `name` VARCHAR(50), IN `path` VARCHAR(255) )
BEGIN
    INSERT INTO `document_details`
      (`document_name`, `document_path`) 
    VALUES (name,path);
END

路线:

Route::post('insert_document_details/{name}/{path}',array('as'=>'insert_document_details',
'uses'=>'AuthorsController@post_document_details'));

AuthorController:

AuthorController:

class AuthorsController extends BaseController{
        public $restful = true;

        public function post_document_details($name,$path)
        {

            $document_details=Response::json(Author::insert_document_details_Call());
            return $document_details;
        }
}

作者(模型):

class Author extends Eloquent {

    public $table = 'document_details';
    protected $primaryKey = 'id';

    public static function insert_document_details_Call($name,$path)
    {
        return DB::select('call insert_document_details');
    }
}

推荐答案

第二个采用可以按如下方式传递的参数列表

The second takes a list of parameters that can be passed as below

DB::select('call insert_document_details(?,?)',array($name,$path));

DB::statement('call insert_document_details(' . DB::raw($name) . ',' . DB::raw($path) . ')');

这篇关于在Laravel 4中的插入查询存储过程中传递参数的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆