Подтвердить что ты не робот

Удалить все записи в таблице MYSQL в phpMyAdmin

Я использую wampserver 2.2. Когда я хочу удалить все записи таблицы в phpMyAdmin (выберите все), она удалит только одну запись не всех записей. Почему он не удаляет все записи?

4b9b3361

Ответ 1

Перейдите в структуру db → и сделайте пустое значение в требуемой таблице. См. Здесь:

this screenshot

Ответ 2

У вас есть 2 варианта delete и truncate:

1) delete from mytable:  Это приведет к удалению всего содержимого таблицы, а не к реестру автоинкрементного идентификатора, этот процесс выполняется очень медленно. Если вы хотите удалить определенные записи, добавьте предложение where в конце.

2) truncate myTable: Это будет reset таблица, то есть все автоматические инкрементные поля будут reset. Это DDL и очень быстро. Вы не можете удалить какую-либо конкретную запись через truncate

Ответ 3

Перейдите на вкладку Sql, выполнив один из следующих запросов:

delete from tableName;

Delete: удалит все строки из вашей таблицы. Следующая вставка примет следующий идентификатор автоматического увеличения.

или

truncate tableName;

Truncate: также удалит строки из вашей таблицы, но он начнется с новой строки с 1.

Подробный блог с примером: http://sforsuresh.in/phpmyadmin-deleting-rows-mysql-table/

Ответ 4

Используйте этот запрос:

DELETE FROM tableName;

Примечание. Чтобы удалить определенную запись, вы также можете указать условие в предложении where в запросе.

ИЛИ вы также можете использовать этот запрос:

truncate tableName;

Также помните, что у вас не должно быть никаких отношений с другой таблицей. Если в таблице будет какое-либо ограничение внешнего ключа, то эта запись не будет удалена и даст ошибку.

Ответ 5

Вы можете удалить все строки с помощью этой команды. Но помните одно: когда вы используете команду truncate, вы не можете отменить ее.

  truncate tableName;

Ответ 6

"Truncate tableName" выйдет из строя в таблице с установленным ограничением ключа. Он также не будет переопределять значение таблицы AUTO_INCREMENT. Вместо этого удалите все записи таблицы и reset индексирование назад к 1, используя этот синтаксис sql:

DELETE FROM tableName;
ALTER TABLE tableName AUTO_INCREMENT = 1

Ответ 7

Интересный факт.

Я был уверен, что TRUNCATE всегда будет работать лучше, но в моем случае для db с примерно 30 таблицами с внешними ключами, заполненными всего несколькими строками, потребовалось около 12 секунд, чтобы TRUNCATE все таблицы, а не только несколько сотен миллисекунд, чтобы УДАЛИТЬ строки. Установка автоматического приращения добавляет около секунды, но все же намного лучше.

Поэтому я бы предложил попробовать оба, посмотреть, что работает быстрее для вашего дела.

Ответ 8

напишите запрос: truncate 'Your_table_name';