Comprobación de la existencia de filas con PDO
Cuando se trabaja con bases de datos, a menudo es necesario realizar diferentes acciones dependiendo de si una fila existe o no. Este artículo explora cómo verificar eficientemente la existencia de una fila usando la popular biblioteca PDO en PHP.
PDO y existencia de filas
PDO proporciona una interfaz flexible y eficiente para interactuar con varias bases de datos. Una de sus poderosas características es el método prepare(), que le permite crear y ejecutar declaraciones preparadas.
Comprobación con rowCount() y fetch()
Su El enfoque inicial usando count($row) == 0 y $stmt->rowCount()
Solución: verificación directa del valor de retorno
Para verificar la existencia de una fila, simplemente puede examinar la valor de retorno de ejecutar(). Si la declaración se ejecutó correctamente y no devolvió filas, ejecutar() devolverá falso. Luego puede realizar las acciones necesarias:
$stmt = $conn->prepare('SELECT * FROM table WHERE ID=?');
$stmt->bindParam(1, $_GET['id'], PDO::PARAM_INT);
$stmt->execute();
if( ! $stmt->execute() ) {
echo 'Row not found';
}
Comprobar sin recuperar
Si desea comprobar la existencia de la fila sin recuperar los datos de la fila, puede utilizar la capacidad de MySQL para devolver un valor en forma de contar. Esto le permite vincular una variable dentro de ejecutar() y verificar su valor:
$sql = 'SELECT 1 FROM table WHERE ID = ? LIMIT 1';
$stmt = $conn->prepare($sql);
$stmt->execute([$_GET['id']]);
if($stmt->fetchColumn()) {
echo 'Row found';
}
Este enfoque es más eficiente ya que evita la recuperación innecesaria de datos de filas.
Descargo de responsabilidad: Todos los recursos proporcionados provienen en parte de Internet. Si existe alguna infracción de sus derechos de autor u otros derechos e intereses, explique los motivos detallados y proporcione pruebas de los derechos de autor o derechos e intereses y luego envíelos al correo electrónico: [email protected]. Lo manejaremos por usted lo antes posible.
Copyright© 2022 湘ICP备2022001581号-3