Symfony 原则和存储过程

发布于 2024-10-14 12:38:24 字数 240 浏览 2 评论 0原文

我尝试通过这个教程来学习symfony,

并且是非常好的指南。 但知道我想创建存储过程。 我如何描述 shema yaml 文件中的过程? 因为当我尝试 ./symfonydoctrine:build --all -and-load -doctrine 删除我的数据库时,我丢失了所有程序

I try to learn symfony by this tutorial

And is very good guide.
But know im want to create stored procedure.
And how i can describe procedures in shema yaml files?
Because when i try to ./symfony doctrine:build --all -and-load - doctrine drop my database and i lose all my procedures

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

把梦留给海 2024-10-21 12:38:24

您无法在原则的 yaml 模式中描述存储过程。但是,您可以在 sql 中执行此操作,并借助 Jonathan Wage 的这篇文章 您可以在加载灯具后执行该 sql。

You cannot describe stored procedures in doctrine's yaml schema. However, you can do that in sql, and with the help in this post from Jonathan Wage you can execute that sql after loading your fixtures.

大姐,你呐 2024-10-21 12:38:24

嘿,
我在sql server下有一个程序。

ALTER PROCEDURE [dbo].[TEST]
-- Variables d'entrée
@p_ENL_I_ID                 int,
-- Variables de retour
@p_RETURN_STATUS            int output
AS
BEGIN
if @p_ENL_I_ID >5   
begin
    SET @p_RETURN_STATUS= 6
end
else
begin
    SET @p_RETURN_STATUS=2
end
END

和我的调用此过程的代码:

$query = "{CALL TEST(:p_ENL_I_ID,  :p_RETURN_STATUS) }";
$rsm = new ResultSetMapping;
$nativeQuery = $this->entityManager->createNativeQuery($query, $rsm);
$nativeQuery->setParameters(array('p_ENL_I_ID'=> 8 ,'p_RETURN_STATUS' => '' ));
$result= $nativeQuery->getResult();

该过程有效,但我有一个错误:
驱动程序中发生异常: SQLSTATE[IMSSP]: 查询的活动结果不包含字段

如何检索返回变量 @p_RETURN_STATUS ?

感谢 !
塞德里克

hy,
I have a procedure under sql server.

ALTER PROCEDURE [dbo].[TEST]
-- Variables d'entrée
@p_ENL_I_ID                 int,
-- Variables de retour
@p_RETURN_STATUS            int output
AS
BEGIN
if @p_ENL_I_ID >5   
begin
    SET @p_RETURN_STATUS= 6
end
else
begin
    SET @p_RETURN_STATUS=2
end
END

and my code for call this procédure :

$query = "{CALL TEST(:p_ENL_I_ID,  :p_RETURN_STATUS) }";
$rsm = new ResultSetMapping;
$nativeQuery = $this->entityManager->createNativeQuery($query, $rsm);
$nativeQuery->setParameters(array('p_ENL_I_ID'=> 8 ,'p_RETURN_STATUS' => '' ));
$result= $nativeQuery->getResult();

the procedure works but I have an error :
exception occurred in the driver: SQLSTATE[IMSSP]: The active result for the query contains no fields

how to retrieve return variable @p_RETURN_STATUS ?

Thank !
Cédric

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文