目前我正在使用 freetds 连接到我正在提取大量会计数据的 MSSql 服务器。数据一直很好,直到达到空值。那时我没有收到任何 PHP 错误。相反,我在 apache 错误日志中收到以下错误。
[通知] child pid 10235 exit signal Segmentation fault (11)
我做了一些搜索并找到了这个页面,但它并没有真正帮助。我正在使用的查询看起来像这样,
SELECT DISTINCT(t1.PEREND), t2.ERATE, t2.EEXTEND, t2.EARNDED, t1.ENTRYSEQ
FROM UPCHKD as t1 LEFT JOIN
(SELECT EARNDED, PEREND, ERATE, EEXTEND, ENTRYSEQ FROM UPCHKD
WHERE (EARNDED LIKE '401K%'AND EARNDED NOT LIKE '401KL%') AND
EMPLOYEE = ? AND PEREND >= ? AND PEREND <= ?) as t2 ON t1.PEREND = t2.PEREND
WHERE t1.PEREND >= ? AND t1.PEREND <= ? AND t1.EMPLOYEE = ? ORDER BY PEREND
我正在使用如下的while循环获取数据,
while($result = $sth->fetch(PDO::FETCH_ASSOC)) {
//Deal with data here
}
我不知道这是否是 PDO、我的数据库层、MSSQL 或我的查询的问题。另外,我想指出,如果我使用 MSSQL Studio 手动运行查询并运行它,它运行良好,并正确显示空值。