downloads | documentation | faq | getting help | mailing lists | licenses | wiki | reporting bugs | php.net sites | links | conferences | my php.net

search for in the

mysql_error> <mysql_drop_db
[edit] Last updated: Fri, 25 May 2012

view this page in

mysql_errno

(PHP 4, PHP 5)

mysql_errnoDevuelve el valor numérico del mensaje de error de la última operación MySQL

Descripción

int mysql_errno ([ resource $link_identifier = NULL ] )

Devuelve el número de error de la última función MySQL.

Los errores que vienen del proceso final de la base de datos ya no emiten advertencias. A su vez, utilice mysql_errno() para recuperar el código de error. Tenga en cuenta que ésta función solamente devolverá el código de error de la función MySQL ejecutada mas recientemente (sin incluir a mysql_error() y mysql_errno()), así que si se quiere usar, hay que asegurarse de revisar el valor antes de llamar otra función MySQL.

Parámetros

link_identifier

La conexión MySQL. Si el identificador de enlace no se especifica, el último enlace abierto por mysql_connect() es asumido. Si no se encuentra dicho enlace, la función intentará establecer un nuevo enlace como si mysql_connect() fuese invocado sin parámetros. Si no se encuentra o establece una conexión, un error de nivel E_WARNING es generado.

Valores devueltos

Devuelve el número de error de la última función de MySQL, o 0 (cero) si no ha ocurrido un error.

Ejemplos

Ejemplo #1 Ejemplo de mysql_errno()

<?php
$link 
mysql_connect("localhost""mysql_user""mysql_password");

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

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

El resultado del ejemplo sería algo similar a:

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

Notas

Nota: Alternativas sugeridas

El uso de esta función está desaconsejado. En su lugar debería usarse la extensión MySQLi o PDO_MySQL. Véase también MySQL: escoger una API para más información.

Las alternativas a esta función incluyen:

Ver también



mysql_error> <mysql_drop_db
[edit] Last updated: Fri, 25 May 2012
 
add a note add a note User Contributed Notes mysql_errno
timstamp.co.uk 25-Jun-2007 01:51
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().
simon at paarlberg dot dk 12-Dec-2005 08:40
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;
      $loop++;
    }
 
    return($md5key);
  }
phpnet at vemconcursos dot com 07-Dec-2005 11:31
Watch out! Although mysql_errno() supposedly returns the error number from the last MySQL function, if you don't specify a link identifier, it assumes the last link *opened*, NOT the last link *used*.

That means you can actually have mysql_errno() blindly ignore the error caused by the last MySQL function if it didn't use the last opened link.

Here's an example:

$link1 = mysql_connect('localhost', 'user1', 'password1');
$link2 = mysql_connect('localhost', 'user2', 'password2');

// do something wrong using the first link
mysql_select_db('nonexistentdb', $link1);

// if you don't specify the link identifier ...
if (mysql_errno()) {
  // the error from the last MySQL function is not reported
  echo mysql_errno() . ': ' . mysql_error() . "\n";
}
admin at artfabrique dot ru 17-Oct-2005 11:28
All MySQL ErrorCodes can be found in its' on-line manual.
For lazy one here is the link :
http://dev.mysql.com/doc/refman/5.0/en/error-handling.html
apoio at cyberspace dot org 29-Jun-2000 11:58
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.

 
show source | credits | stats | sitemap | contact | advertising | mirror sites