PHP / PDO / MSSQL как получить информацию об ошибках? - PullRequest
11 голосов
/ 31 марта 2011

Я много искал, но ничего не могу найти по моей проблеме. Я использую PDO с драйвером PDO_DBLIB для доступа к базе данных MS SQL. Обычно я использую подготовленные операторы, но в случае сбоя любого запроса я не получаю никакой дополнительной информации об ошибке, кроме этой:

General SQL Server error: Check messages from the SQL Server [241] (severity 16) [(null)]

У кого-нибудь есть подсказка о том, как получить дополнительную информацию об ошибке (синтаксическая ошибка в ...)?

С наилучшими пожеланиями

Michael

Ответы [ 2 ]

15 голосов
/ 31 марта 2011

Чтобы найти сообщение об ошибке:

-- SQL 2005+
select * from sys.messages where message_id = 241
-- SQL 2000
select * from sysmessages where error = 241

Похоже, что PDO по какой-то причине удаляет фактический текст сообщения об ошибке, но поскольку в документации говорится, что PDO_DBLIB является экспериментальной, это может быть просто ошибкой.

Вы также должны знать, что DBLIB устарела от Microsoft с SQL 2005, поэтому вам почти наверняка следует использовать другую библиотеку для подключения к MSSQL.

1 голос
/ 04 марта 2016

Сообщения об ошибках SQL Server

ошибка 241: синтаксическая ошибка преобразования даты / времени из символьной строки

Этот формат работает для меня: date("Ymd H:i:s");

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...