В настоящее время я использую freetds для подключения к серверу MSSql, где я загружаю много учетных данных. Данные загружаются нормально, пока не достигают нулевого значения. В этот момент я не получаю никаких ошибок PHP. Вместо этого я получаю следующую ошибку в журнале ошибок apache.
[уведомление] дочерний pid 10235 выходной сигнал Ошибка сегментации (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, он будет работать нормально и правильно покажет нулевые значения.