0
$sql = "dSELECT * FROM users";
$dbQuery = $this->dbal->query($sql);
$dbError = $this->dbal->errorInfo();
$ dbError獲取語法錯誤信息。PDO errorCode不適用於準備
如果準備好的語句使用相同的語句,它在準備後不會返回任何錯誤。
此代碼是從php.net
<?php
/* Provoke an error -- bogus SQL syntax */
$stmt = $dbh->prepare('bogus sql');
if (!$stmt) {
echo "\nPDO::errorInfo():\n";
print_r($dbh->errorInfo());
}
ERRORINFO不會以這種方式工作。 我用
$dbQuery = $this->dbal->prequery($sql);
$dbError = $dbQuery->errorInfo(); // $this->dbal->errorInfo(); doesn't work, too.
你試過[這個答案](http://stackoverflow.com/questions/6263443/pdo-connection-test/6263868#6263868)? –
嘗試過,但沒有這個工作。實際上默認模式是默認情況下,它與dbal->查詢。 –
當我使用: $ this-> dbal-> setAttribute(\ PDO :: ATTR_ERRMODE,\ PDO :: ERRMODE_EXCEPTION); var_dump(\ PDO :: ATTR_ERRMODE);每次返回3.SILENT,警告或異常返回3。 –