<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <meta http-equiv="content-type" content="text/html; charset=UTF-8"> <title>Fetch the SQLSTATE associated with the last operation on the database handle</title> </head> <body><div class="manualnavbar" style="text-align: center;"> <div class="prev" style="text-align: left; float: left;"><a href="pdo.construct.html">PDO::__construct</a></div> <div class="next" style="text-align: right; float: right;"><a href="pdo.errorinfo.html">PDO::errorInfo</a></div> <div class="up"><a href="class.pdo.html">PDO</a></div> <div class="home"><a href="index.html">PHP Manual</a></div> </div><hr /><div id="pdo.errorcode" class="refentry"> <div class="refnamediv"> <h1 class="refname">PDO::errorCode</h1> <p class="verinfo">(PHP 5 >= 5.1.0, PECL pdo >= 0.1.0)</p><p class="refpurpose"><span class="refname">PDO::errorCode</span> — <span class="dc-title"> Fetch the SQLSTATE associated with the last operation on the database handle </span></p> </div> <div class="refsect1 description" id="refsect1-pdo.errorcode-description"> <h3 class="title">Description</h3> <div class="methodsynopsis dc-description"> <span class="modifier">public</span> <span class="type"><a href="language.pseudo-types.html#language.types.mixed" class="type mixed">mixed</a></span> <span class="methodname"><strong>PDO::errorCode</strong></span> ( <span class="methodparam">void</span> )</div> </div> <div class="refsect1 returnvalues" id="refsect1-pdo.errorcode-returnvalues"> <h3 class="title">Return Values</h3> <p class="para"> Returns an SQLSTATE, a five characters alphanumeric identifier defined in the ANSI SQL-92 standard. Briefly, an SQLSTATE consists of a two characters class value followed by a three characters subclass value. A class value of 01 indicates a warning and is accompanied by a return code of SQL_SUCCESS_WITH_INFO. Class values other than '01', except for the class 'IM', indicate an error. The class 'IM' is specific to warnings and errors that derive from the implementation of PDO (or perhaps ODBC, if you're using the ODBC driver) itself. The subclass value '000' in any class indicates that there is no subclass for that SQLSTATE. </p> <p class="para"> <span class="function"><strong>PDO::errorCode()</strong></span> only retrieves error codes for operations performed directly on the database handle. If you create a PDOStatement object through <span class="function"><a href="pdo.prepare.html" class="function">PDO::prepare()</a></span> or <span class="function"><a href="pdo.query.html" class="function">PDO::query()</a></span> and invoke an error on the statement handle, <span class="function"><strong>PDO::errorCode()</strong></span> will not reflect that error. You must call <span class="function"><a href="pdostatement.errorcode.html" class="function">PDOStatement::errorCode()</a></span> to return the error code for an operation performed on a particular statement handle. </p> <p class="para"> Returns <strong><code>NULL</code></strong> if no operation has been run on the database handle. </p> </div> <div class="refsect1 examples" id="refsect1-pdo.errorcode-examples"> <h3 class="title">Examples</h3> <p class="para"> <div class="example" id="example-921"><p><strong>Example #1 Retrieving an SQLSTATE code</strong></p> <div class="example-contents"> <div class="phpcode"><code><span style="color: #000000"> <span style="color: #0000BB"><?php<br /></span><span style="color: #FF8000">/* Provoke an error -- the BONES table does not exist */<br /></span><span style="color: #0000BB">$dbh</span><span style="color: #007700">-></span><span style="color: #0000BB">exec</span><span style="color: #007700">(</span><span style="color: #DD0000">"INSERT INTO bones(skull) VALUES ('lucy')"</span><span style="color: #007700">);<br /><br />echo </span><span style="color: #DD0000">"\nPDO::errorCode(): "</span><span style="color: #007700">;<br />print </span><span style="color: #0000BB">$dbh</span><span style="color: #007700">-></span><span style="color: #0000BB">errorCode</span><span style="color: #007700">();<br /></span><span style="color: #0000BB">?></span> </span> </code></div> </div> <div class="example-contents"><p>The above example will output:</p></div> <div class="example-contents screen"> <div class="cdata"><pre> PDO::errorCode(): 42S02 </pre></div> </div> </div> </p> </div> <div class="refsect1 seealso" id="refsect1-pdo.errorcode-seealso"> <h3 class="title">See Also</h3> <p class="para"> <ul class="simplelist"> <li class="member"> <span class="function"><a href="pdo.errorinfo.html" class="function" rel="rdfs-seeAlso">PDO::errorInfo()</a> - Fetch extended error information associated with the last operation on the database handle</span></li> <li class="member"> <span class="function"><a href="pdostatement.errorcode.html" class="function" rel="rdfs-seeAlso">PDOStatement::errorCode()</a> - Fetch the SQLSTATE associated with the last operation on the statement handle</span></li> <li class="member"> <span class="function"><a href="pdostatement.errorinfo.html" class="function" rel="rdfs-seeAlso">PDOStatement::errorInfo()</a> - Fetch extended error information associated with the last operation on the statement handle</span></li> </ul> </p> </div> </div><hr /><div class="manualnavbar" style="text-align: center;"> <div class="prev" style="text-align: left; float: left;"><a href="pdo.construct.html">PDO::__construct</a></div> <div class="next" style="text-align: right; float: right;"><a href="pdo.errorinfo.html">PDO::errorInfo</a></div> <div class="up"><a href="class.pdo.html">PDO</a></div> <div class="home"><a href="index.html">PHP Manual</a></div> </div></body></html>