TRUNCATE tabla MySQL con PHP PDO
Vaciar una tabla MySQL con PHP PDO con un ejemplo completo
TRUNCATE tabla MySQL con PHP PDO. En este tutorial mostrare sobre cómo vaciar completamente una tabla MySQL usando PHP. Sin embargo, el gestor de base de datos posee una clausula llamada TRUNCATE que limpiara la tabla por completo para iniciar de cero.
En algunos casos, se usa para vaciar tablas con datos errores y no nos queda otra opción que limpiar toda la tabla y empezar de cero.
En este tutorial, usaré el objeto PDO de PHP para interactuar con la base de datos MySQL:
<?php //Crea una instancia de nuestro objeto PDO y crea una nueva conexión MySQL. $pdo = new PDO('mysql:host=localhost;dbname=empresa', 'root', 'password'); //Nuestra instrucción SQL. Esto vaciará / truncará la tabla "imagenes" $sql = "TRUNCATE TABLE `imagenes`"; //Prepare la consulta SQL. $statement = $pdo->prepare($sql); //Ejecute la instrucción. $statement->execute(); ?>
Proceso de TRUNCATE tabla MySQL:
- Primero nos conectamos a MySQL usando el objeto PDO. Además, seleccionamos una base de datos llamada «empresa«.
- Hemos creado la consulta SQL. Sin embargo, en este ejemplo usaremos la instrucción TRUNCATE TABLE para vaciar una tabla llamada «imagenes«.
- Preparamos la declaración SQL.
- Para terminar, ejecutamos la instrucción, vaciando así la tabla declarada en la consulta SQL.
Diferencias entre TRUNCATE y DELETE
Para mejorar el concepto, hay algunas diferencias entre el uso de la instrucción TRUNCATE y eliminar todas las filas de la tabla con la instrucción DELETE:
- La instrucción TRUNCATE TABLE es más rápida .
- Para vaciar una tabla con este método, su cuenta de usuario MySQL necesitará tener el privilegio DROP.
- TRUNCATE TABLE NO se puede revertir.
- Si trunca una tabla, se restablecerá la clave de AUTO_INCREMENT. es decir, el siguiente “
autoindex
” para su CLAVE PRIMARIA se establecerá en 1. - DELETE solo elimina los registros seleccionados y no alterara el autoindex de la tabla .
- En segundo plano, esta instrucción está quitando / eliminando la propia tabla antes de volver a crearla.
- Esta instrucción no devolverá ningún dato significativo. es decir, no devolverá el número de filas que se han eliminado. Simplemente le dirá que 0 filas se han visto afectadas.
Otro factor a considerar sobre esta cláusula es la de vaciar también el AUTO_INCREMENT
de la tabla y lo pone en 1. Veamos un ejemplo de la consulta en MySQL.
ALTER TABLE tablename AUTO_INCREMENT = 1
TRUNCATE usando phpMyAdmin
Si estamos usando este gestor simplemente ingresamos a la base de datos y ejecutamos la siguiente sentencia, obviamente cambiando la tabla que desean vaciar.
TRUNCATE TABLE nombre_tabla;
Conclusión: TRUNCATE tabla MySQL
Con este breve articulo hemos aprendido a vaciar por completo una tabla en MYSQL usando PDO
Además, hemos visto la diferencia entre TRUNCATE y DELETE
Empty mysql table with php PDO