Blog de programación, errores, soluciones

Chose Language:
Author: Admin/Publisher |finished | checked

PHP clase PDOException

Representa un error generado por la extensión PDO.

No deberías lanzar una excepción PDOException desde tu código.
Sinopsis / Synopsis
 class PDOException extends RuntimeException {
/* Propiedades */
public array $errorInfo;
protected string $code;
/* Propiedades heredadas */
protected string $message = "";
private string $string = "";
protected int $code;
protected string $file = "";
protected int $line;
private array $trace = [];
private ?Throwable $previous = null;
/* Métodos heredados */
final public Exception::getMessage(): string
final public Exception::getPrevious(): ?Throwable
final public Exception::getCode(): int
final public Exception::getFile(): string
final public Exception::getLine(): int
final public Exception::getTrace(): array
final public Exception::getTraceAsString(): string
public Exception::__toString(): string
private Exception::__clone(): void
}

Propiedades

https://blastcoding.com/php-clase-pdoexception/#propiedades

$errorInfo – Corresponde a PDO::errorInfo() o PDOStatement::errorInfo()

$code – Código de error de SQLSTATE. Puedes utilizar el método getCode para acceder a su valor.

Propiedades heredadas de RuntimeException

$message – El mensaje de la excepción

$code – El código de la excepción

$file – El nombre del fichero donde se originó la excepción

$line– La línea donde ocurrió el error

$previous – La excepción lanzada previamente

$trace – El seguimiento de la pila como array

Métodos

https://blastcoding.com/php-clase-pdoexception/#metodos

Los metodos que posee la clase PDOException son heredados de RuntimeException y son los siguientes:

getMessage

https://blastcoding.com/php-clase-pdoexception/#getMessage

Obtiene el mensaje de excepción en caso de que al estar usando la extensión PDO obtengamos un error o fallo. Este método devuelve el mensaje asociado con la excepción PDO que se ha lanzado.

Description / Descripción
final public Exception::getMessage(): string
getMessage example:
try {
    $dsn = 'mysql:host=localhost;dbname=nombre_basedatos';
    $usuario = 'usuario';
    $contrasena = 'contraseña';

    $conexion = new PDO($dsn, $usuario, $contrasena);

    // Aquí podrías realizar operaciones con la base de datos

} catch (PDOException $e) {
    // En caso de error, capturamos la excepción y mostramos el mensaje
    echo "Error de conexión: " . $e->getMessage();
}

Retorno

string – El retorno será una cadena de caracteres, el error que hemos obtenido de la operación anterior utilizando PDO

getPrevious

https://blastcoding.com/php-clase-pdoexception/#getPrevious

Devuelve la Throwable anterior(interfaz)

Description / Descripción
final public Exception::getPrevious(): ?Throwable

getCode

https://blastcoding.com/php-clase-pdoexception/#getCode

Obtiene el código de una excepción

Description / Descripción
 final public Exception::getCode(): int

getFile

https://blastcoding.com/php-clase-pdoexception/#getFile

Obtiene el lugar en donde se creó la excepción

Description / Descripción
 final public Exception::getFile(): string

getLine

https://blastcoding.com/php-clase-pdoexception/#getLine

Obtiene la línea en el que se creó la excepción

Description / Descripción
 final public Exception::getLine(): int

Concepto de stack trace en Excepciones

El stack trace de una excepción, también conocido como seguimiento de la pila, es un registro que muestra la secuencia de llamadas a funciones que se ejecutaron hasta el momento en que se produjo la excepción. Es una herramienta fundamental para la depuración de errores en software.


getTrace

https://blastcoding.com/php-clase-pdoexception/#getTrace

Conseguiremos el stack trace en forma de array

Description / Descripción
 final public Exception::getTrace(): array

Retorno

Este array devuelto sería un array de arrays que poseen la información como puede ser la funcion, archivo, línea, argumentos, etc.

getTraceAsString

https://blastcoding.com/php-clase-pdoexception/#getTraceAsString

obtiene el stack trace en forma de string

Description / Descripción
final public Exception::getTraceAsString(): string
Category: php
Something wrong? If you found an error or mistake in the content you can contact me on Twitter | @luisg2249_luis.
Last 4 post in same category