首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >在laravel 5中调用MSSQL存储过程的命名参数

在laravel 5中调用MSSQL存储过程的命名参数
EN

Stack Overflow用户
提问于 2016-10-13 08:00:29
回答 2查看 205关注 0票数 1

我有一个现有的MSSQL存储过程,我需要在我的laravel应用程序中调用它。我知道我可以使用laravel eloquent中的高级wheres,但客户希望我调用该存储过程。

我需要按如下方式调用SP

代码语言:javascript
运行
复制
exec sp_getDepends @Action= 'smn',@DependencyID = 12345

我知道我可以使用DB:statement,但我不知道如何传递命名的参数。

你能帮我解决这个问题吗?

谢谢

EN

回答 2

Stack Overflow用户

发布于 2016-10-13 18:26:27

代码语言:javascript
运行
复制
DB::select(DB::raw("exec dbo.sp_getDepends :Action, :DependencyID"),
[':Action' => $Action, ':DependencyID' => $DependencyID]);

dbo。可能需要删除,不是100%确定这是否是你正在寻找的,但我希望它会让你在正确的轨道上。

票数 0
EN

Stack Overflow用户

发布于 2020-04-29 14:10:29

我必须找到一个解决方案,所以就是这样。

代码语言:javascript
运行
复制
DB::select('exec sp_getDepends @Action = ?, @DependencyID = ?', ['smn', '12345'])

如果您只想传递一个参数,在本例中可能是DependencyID,您可以使用:

代码语言:javascript
运行
复制
DB::select('exec sp_getDepends @DependencyID = ?', ['12345'])

你得到了大致的概念。

问题是如何在laravel中调用MSSQL存储过程的命名参数。这就是我的回答。如果您想在laravel中使用命名参数,我认为它可能类似于:

代码语言:javascript
运行
复制
DB::select('exec sp_getDepends @Action = :ActionParam, @DependencyID = :DependencyIDParam'), ['ActionParam' => 'smn', 'DependencyIDParam' => '12345']);
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/40010212

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档