Yo uso wampserver 2.2. Cuando quiero eliminar todos los registros de una tabla en phpMyAdmin (seleccionar todo), elimina solo un registro, no todos los registros. ¿Por qué no borra todos los registros?
SHIFT-DEL
Yo uso wampserver 2.2. Cuando quiero eliminar todos los registros de una tabla en phpMyAdmin (seleccionar todo), elimina solo un registro, no todos los registros. ¿Por qué no borra todos los registros?
SHIFT-DEL
Respuestas:
Tienes 2 opciones delete
y truncate
:
delete from mytable
Esto borrará todo el contenido de la tabla, no reseteando la identificación autoincremental, este proceso es muy lento. Si desea eliminar registros específicos, agregue una cláusula where al final.
truncate myTable
Esto restablecerá la tabla, es decir, se restablecerán todos los campos incrementales automáticos. Es un DDL y es muy rápido. No puede eliminar ningún registro específico a través de truncate
.
Vaya a la pestaña Sql y ejecute una de las siguientes consultas:
delete from tableName;
Eliminar : eliminará todas las filas de su tabla. La siguiente inserción tomará la siguiente identificación de incremento automático.
o
truncate tableName;
Truncar : también eliminará las filas de su tabla, pero comenzará desde una nueva fila con 1.
Un blog detallado con ejemplo: http://sforsuresh.in/phpmyadmin-deleting-rows-mysql-table/
Utilice esta consulta:
DELETE FROM tableName;
Nota: Para eliminar algún registro específico, también puede especificar la condición en la cláusula where en la consulta.
O puede utilizar esta consulta también:
truncate tableName;
También recuerda que no debes tener ninguna relación con otra mesa. Si habrá alguna restricción de clave externa en la tabla, esos registros no se eliminarán y darán el error.
'Truncate tableName' fallará en una tabla con una restricción de clave definida. Tampoco volverá a indexar el AUTO_INCREMENT
valor de la tabla . En su lugar, elimine todas las entradas de la tabla y restablezca la indexación a 1 usando esta sintaxis sql:
DELETE FROM tableName;
ALTER TABLE tableName AUTO_INCREMENT = 1
Un dato interesante.
Estaba seguro de que TRUNCATE siempre funcionará mejor, pero en mi caso, para una base de datos con aproximadamente 30 tablas con claves externas, pobladas con solo unas pocas filas, tomó aproximadamente 12 segundos TRUNCATE todas las tablas, en lugar de solo unos pocos cientos de milisegundos para BORRAR las filas. La configuración del incremento automático agrega aproximadamente un segundo en total, pero aún es mucho mejor.
Así que le sugiero que pruebe ambos, vea cuál funciona más rápido para su caso.
escriba la consulta: truncar 'Your_table_name';
DELETE FROM tableName