Форумы портала PHP.SU » » Работа с СУБД » pdo и хранимые процедуры

Страниц (1): [1]
 

1. seobots - 22 Июля, 2013 - 17:59:55 - перейти к сообщению
Доброго времени суток,

столкнулся с проблемой вызова процедуры


$db = new PDO ("mssql:host=$hostname;dbname=$dbname","$username","$pw");
$query = $db->prepare("exec procedure_name text");
$query->execute();
print_r ($db->errorInfo());

ответ:
Array ( [0] => 00000 [1] => 0 [2] => (null) [0] (severity 0) [] [3] => 0 [4] => 0 )
2. Мелкий - 22 Июля, 2013 - 19:58:59 - перейти к сообщению
Всё по нулям, значит тут всё OK.
Обратите внимание:
http://php.net/manual/en/pdo.errorinfo.php
Цитата:
PDO::errorInfo() only retrieves error information for operations performed directly on the database handle. If you create a PDOStatement object through PDO::prepare() or PDO::query() and invoke an error on the statement handle, PDO::errorInfo() will not reflect the error from the statement handle. You must call PDOStatement::errorInfo() to return the error information for an operation performed on a particular statement handle.
3. seobots - 23 Июля, 2013 - 10:56:29 - перейти к сообщению
как оказалось PDO не отдавало ошибку
Heterogeneous queries require the ANSI_NULLS and ANSI_WARNINGS options to be set for the connection. This ensures consis tent query semantics. Enable these options and then reissue your query.


нужно было включить
SET ANSI_NULLS ON;
SET ANSI_WARNINGS ON;
4. Evgen - 24 Января, 2017 - 09:00:01 - перейти к сообщению
Подскажите пожалуйста, а как включить
SET ANSI_NULLS ON;
SET ANSI_WARNINGS ON;
Если я перед селектом добавляю эти строчки, то у меня такая же ошибка:
Heterogeneous queries require the ANSI_NULLS and ANSI_WARNINGS options to be set for the connection. This ensures consistent query semantics

 

Powered by ExBB FM 1.0 RC1