Php 同一服务器上的两个数据库之间的MSSQL左连接,不';使用PDO时不返回任何内容

Php 同一服务器上的两个数据库之间的MSSQL左连接,不';使用PDO时不返回任何内容,php,tsql,pdo,sql-server-2000,Php,Tsql,Pdo,Sql Server 2000,我正在使用PDO连接到MS SQL 2000数据库,并希望在同一SQL 2000服务器上创建到另一个数据库的左连接。当在MSSQL查询分析器上运行时,此查询返回正确的结果,并按照我的预期从两个数据库中提取数据 select t_job.pk_Job, t_JobSummary.Description, t_CarChecks.YesNo from t_job left join t_JobSummary on pk_Job=t_JobSummary.fk_Job left join DATABA

我正在使用PDO连接到MS SQL 2000数据库,并希望在同一SQL 2000服务器上创建到另一个数据库的左连接。当在MSSQL查询分析器上运行时,此查询返回正确的结果,并按照我的预期从两个数据库中提取数据

select t_job.pk_Job, t_JobSummary.Description, t_CarChecks.YesNo
from t_job
left join t_JobSummary on pk_Job=t_JobSummary.fk_Job
left join DATABASE2.dbo.t_CarChecks t_CarChecks on pk_Job=t_CarChecks.fk_Job
where t_JobSummary.Description_vc LIKE \'Cars %\'
但是,当我从web页面使用相同的查询时,不会返回任何结果。在我将左连接添加到第二个数据库之前,该查询一直从网页进行,如果我按如下所示注释掉该数据库,则该查询将返回结果,以便我可以确定(?!)问题出在SQL语句上

select t_job.pk_Job, t_JobSummary.Description --, t_CarChecks.YesNo
from t_job
left join t_JobSummary on pk_Job=t_JobSummary.fk_Job
--left join DATABASE2.dbo.t_CarChecks t_CarChecks on pk_Job=t_CarChecks.fk_Job
where t_JobSummary.Description_vc LIKE \'Cars %\'
在这里和其他网站上阅读之后,我为第二个数据库使用了一个别名,但仍然没有得到任何结果

我是PDO的新手,这让我很困惑。如果有任何有用的建议(或者让我知道这里有一个明显的错误),我们将不胜感激


谢谢

感谢您的快速回复,不过我发现了问题所在。与PDO完全无关,它是数据库中第二个表的权限。从SQL Server查询分析器进行的测试重新调整了结果,因为我拥有对新表的权限;我正在使用PDO查询表的用户没有


“再次在堆栈溢出上发布之前检查此项”笔记本中的一项…

关于生命、宇宙和PDO问题的最终问题的答案是

$dbh->setAttribute( PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION );
连接后立即设置。

它将向您复述数据库中发生的任何错误

您使用的是什么PDO驱动程序?不。我正在跟踪Apache error.log以查找错误,但没有任何错误。网页加载正确,就像没有结果一样。Hi@hek2mgl'dblib'是我正在使用的驱动程序。Hmm。希望mssql查询分析器使用不同的、增强的驱动程序。这种行为可能是dblib的一个缺陷。@dj-4g11e32如果您尝试使用PDO_ODBC怎么办?我正要把它作为一种可能发布出来谢谢!这是我脑海中下一个问题的答案,“如何获得更好的调试信息?”我在PDO上设置了这个问题,在SQL语句中添加了一些随机输入错误,当然我得到了我要寻找的调试信息!