CascadiaPHP 2024


(PHP 4, PHP 5)

mysql_errnoReturns the numerical value of the error message from previous MySQL operation


Questa enstensione deprecata da PHP 5.5.0, e sarà rimossa in futuro. Al suo posto, usare l'estensione MySQLi o PDO_MySQL. Vedere anche la guida MySQL: scelta dell'API e le FAQ relative per ulteriori informazioni. Le alternative a questa funzione includono:


mysql_errno(resource $link_identifier = NULL): int

Returns the error number from the last MySQL function.

Errors coming back from the MySQL database backend no longer issue warnings. Instead, use mysql_errno() to retrieve the error code. Note that this function only returns the error code from the most recently executed MySQL function (not including mysql_error() and mysql_errno()), so if you want to use it, make sure you check the value before calling another MySQL function.

Elenco dei parametri


La connessione MySQL. Se l'identificativo di connessione non è specificato, l'ultima connessione aperta da mysql_connect() viene assunta. Se questa connessione non è trovata, si cercherà di crearne una come se mysql_connect() fosse stata chiamata senza argomenti. Se una connessione non è trovata oppure non viene stabilita, un avviso di livello E_WARNING viene generato.

Valori restituiti

Returns the error number from the last MySQL function, or 0 (zero) if no error occurred.


Example #1 mysql_errno() example

= mysql_connect("localhost", "mysql_user", "mysql_password");

if (!
mysql_select_db("nonexistentdb", $link)) {
mysql_errno($link) . ": " . mysql_error($link). "\n";

mysql_select_db("kossu", $link);
if (!
mysql_query("SELECT * FROM nonexistenttable", $link)) {
mysql_errno($link) . ": " . mysql_error($link) . "\n";

Il precedente esempio visualizzerà qualcosa simile a:

1049: Unknown database 'nonexistentdb'
1146: Table 'kossu.nonexistenttable' doesn't exist

Vedere anche:

add a note

User Contributed Notes 3 notes

17 years ago
If you are receiving errors like:
Warning: mysql_close(): 5 is not a valid MySQL-Link resource

Check that you are calling mysql_error() and mysql_errno() BEFORE you call mysql_close().
apoio at cyberspace dot org
24 years ago
All mysqld error messages are located into the file /usr/local/share/mysql/english/errmsg.txt and listed in numerical order from 999 to 1175. You can change the output language as well, issuing the '-L spanish' option for example. See the manual for more details.
simon at paarlberg dot dk
18 years ago
Function for creating unique md5 keys in a database. If there are duplets, then a new md5-key will be generated. For your use:

function users_md5create($id){
global $mysql_link;

while ($done==0) {
$md5key = md5(time().($id/2).$loop).md5(time().$id.$loop);
$query = "INSERT INTO users_md5create SET md5key='$md5key', fkey='$id', created=UNIX_TIMESTAMP() ";
$mysql_result = mysql_query($query, $mysql_link);
if(mysql_errno($mysql_link)!=1062) $done=1;

To Top