Función PHP mysqli_error_list ()
Definición y uso
los mysqli_error_list() La función devuelve la lista de errores ocurridos durante la última llamada a la función MySQLi.
Sintaxis
mysqli_error_list($con)
Parámetros
No Señor | Descripción de parámetros |
---|---|
1 | con(Mandatory) Este es un objeto que representa una conexión a MySQL Server. |
Valores devueltos
La función PHP mysqli_error_list () devuelve una lista que representa los errores (cada error como una matriz) durante la ejecución de la última declaración.
Versión PHP
Esta función se introdujo por primera vez en PHP Versión 5 y funciona en todas las versiones posteriores.
Ejemplo
El siguiente ejemplo demuestra el uso de la función mysqli_error_list () (en estilo procedimental):
<?php
//Creating a connection
$con = mysqli_connect("localhost", "root", "password", "mydb");
mysqli_query($con, "CREATE TABLE Test(Name VARCHAR(10), AGE INT)");
//Executing the query
$query = "INSERT into Test values('Raju', 25),('Rahman', 30),('Sri Rama Chandra Murthi', 25)";
mysqli_query($con, $query);
//Error
$list = mysqli_error_list($con);
print_r($list);
//Closing the connection
mysqli_close($con);
?>
Esto producirá el siguiente resultado:
Array
(
[0] => Array
(
[errno] => 1406
[sqlstate] => 22001
[error] => Data too long for column 'Name' at row 3
)
)
Ejemplo
En el estilo orientado a objetos, la sintaxis de esta función es $ con -> error_list . A continuación se muestra el ejemplo de esta función en estilo orientado a objetos:
<?php
//Creating a connection
$con = new mysqli("localhost", "root", "password", "mydb");
//Query to retrieve all the rows of employee table
$con -> query("SELECT * FROM wrong_table_name");
//Error
$list = $con->error_list;
print_r($list);
//Closing the connection
$con -> close();
?>
Esto producirá el siguiente resultado:
Array
(
[0] => Array
(
[errno] => 1146
[sqlstate] => 42S02
[error] => Table 'mydb.wrong_table_name' doesn't exist
)
)
Ejemplo
Supongamos que tenemos una tabla llamada empleado con el siguiente contenido:
mysql> select * from employee;
+------------+--------------+------+------+--------+
| FIRST_NAME | LAST_NAME | AGE | SEX | INCOME |
+------------+--------------+------+------+--------+
| Vinay | Bhattacharya | 20 | M | 16000 |
| Sharukh | Sheik | 25 | M | 13300 |
| Trupthi | Mishra | 24 | F | 31000 |
| Sheldon | Cooper | 25 | M | 2256 |
| Sarmista | Sharma | 28 | F | 15000 |
+------------+--------------+------+------+--------+
5 rows in set (0.06 sec)
A continuación se muestra otro ejemplo de la función mysqli_error_list () :
<?php
//Creating a connection
$con = mysqli_connect("localhost", "root", "password", "mydb");
//Query to SELECT all the rows of the employee table
mysqli_query($con, "SELECT * FROM employee");
$list = mysqli_error_list($con);
print_r($list);
//Query to UPDATE the rows of the employee table
mysqli_query($con, "UPDATE employee set INCOME=INCOME+5000 where FIRST_NAME in (*)");
$list = mysqli_error_list($con);
print_r($list);
//Query to INSERT a row into the employee table
mysqli_query($con, "INSERT INTO employee VALUES (Archana, 'Mohonthy', 30, 'M', 13000, 106)");
$list = mysqli_error_list($con);
print_r($list);
//Closing the connection
mysqli_close($con);
?>
Esto producirá el siguiente resultado:
Array
(
)
Array
(
[0] => Array
(
[errno] => 1064
[sqlstate] => 42000
[error] => You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '*)' at line 1
)
)
Array
(
[0] => Array
(
[errno] => 1136
[sqlstate] => 21S01
[error] => Column count doesn't match value count at row 1
)
)