微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

PDO <-> SQL Server exec(在Laravel中)返回空数组

PHP,Laravel,调用

$db->select("EXEC [dbo].[sp_StoredProc1] 1, 3, 1, '2016-06-12 00:00:00', '2016-09-12 00:00:00'");

结果-空数组!!!

通过sql Server Management Studio调用相同的函数

EXEC [dbo].[sp_StoredProc1] 1, 3, 1, '2016-06-12 00:00:00', '2016-09-12 00:00:00'

结果-有效表格.

任何想法,为什么会发生这种情况,我们深表感谢

解决方法:

原因-是MS sql Server的PHP PDO中的错误.
尽管发生异常,也不会引发异常.
这里描述了一个非常相似的情况:
http://www.sqlservercentral.com/Forums/Topic1754869-392-1.aspx

所以这是两个步骤的问题:

>当存储过程参数未明确设置为NULL / NOT NULL时,它们将被继承,这会导致异常…
> PDO未显示(该错误在Laravel PDO中).

另外,您可能会看到此线程
PHP – PDOException is not thrown on error, an empty array returned (SQL Server)
在这个问题上,我的同事比我做的更好:)))

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。