Поиск по сайту:

PHP MySQL DELETE, TRUNCATE, DROP Table

Как удалить, обрезать и удалить таблицу MySQL с помощью PHP в XAMPP

В этом руководстве мы обсудим, как выполнять операции DELETE, TRUNCATE и DROP в таблице базы данных MySQL с использованием PHP в XAMPP в Linux.

Прежде чем углубляться в эту тему, давайте разберемся в различиях между командами «Удалить», «Усечь» и «Отбросить».

Разница между командами DROP, TRUNCATE и DELETE

В следующей таблице показано, что такое команды DELETE, TRUNCATE, DROP и когда их использовать.

DROPTRUNCATEDELETE
DROP will delete entire table (both rows and structure-columns).TRUNCATE deletes all the rows in the table and structure(columns) will remain the same.DELETE is used to delete particular rows based on the condition specified in WHERE clause
Syntax:
DROP TABLE table_name
Syntax:
TRUNCATE TABLE table_name
Syntax:
DELETE FROM table_name WHERE condition
DROP is an Data Definition Language (DDL) CommandTRUNCATE is an Data Definition Language (DDL) CommandDELETE is an Data Manipulation Language (DML) Command
DROP & TRUNCATE are equal in terms of computing.TRUNCATE is faster than DELETE.DELETE is slower than TRUNCATE.
WHERE Clause is not used.WHERE Clause is not used.WHERE Clause is used.
Use this when you don't need the table anymore.Use this when you want to empty a table.Use this when you want to delete a certain records from a table.

DROP против TRUNCATE против DELETE

В двух словах,

  • DELETE удалит определенные записи,
  • TRUNCATE удалит все записи, но не удалит таблицу.
  • и DROP удалит всю таблицу.

Предварительные условия

В демонстрационных целях я создал таблицу под названием "sales" в базе данных MySQL под названием "my_company" со следующими записями.

idnamecount
1Cooking-Gas40
5Shampoo10
2Milk20
3Books14
4Chocos45
6Eggs12

Записи из таблицы продаж

Просмотр записей таблицы в базе данных MySQL

Внимание! В XAMPP имена базы данных и таблиц нечувствительны к регистру. Он будет рассматривать верхний/нижний регистр только как строчные.

Если вы еще не создали базу данных и таблицу, обратитесь к следующему руководству.

  • Создание базы данных и таблицы MySQL с использованием PHP в XAMPP

Шаги по написанию PHP-кода

1. Укажите имя сервера, имя пользователя, пароль и имя базы данных в своем PHP-коде.

2. Создайте соединение с помощью функции mysqli_connect().

Код:

$connection = mysqli_connect($server_name, $user_name, $password, $database_name);

3. Проверьте соединение с помощью функции mysqli_connect_error(), указанной в условии if. Эта функция будет отображать ошибку, если соединение не удалось. Это необязательный шаг.

4. Укажите SQL-запрос для удаления определенной строки/строк из таблицы с помощью команд DELETE/DROP/TRUNCATE.

5. Используйте функцию mysqli_multi_query(), чтобы проверить, удалены ли значения или нет.

Синтаксис:

mysqli_multi_query($connection, $query)

Здесь,

  • $connection указывает детали соединения,
  • $query — это запрос SQL.

Если это правда, то запись удаляется. В противном случае он вернет ошибку. Мы можем проверить ошибку, используя функцию mysqli_error($connection).

6. Закройте соединение с помощью функции mysqli_close().

Синтаксис:

mysqli_close($connection);

Давайте рассмотрим обсуждение использования каждой команды на примере.

УДАЛИТЬ строки из таблицы MySQL с помощью PHP

Команда DELETE используется для удаления определенной строки из таблицы.

Синтаксис запроса:

DELETE FROM table_name where condition;

Пример кода:

В этом примере мы удалим строку, в которой указан id=3.

Создайте обычный текстовый файл с именем delete.php в папке /htdocs со следующим содержимым.

Внимание! Если вы используете Linux, папка htdocs будет находиться в каталоге /opt/lampp/. Если вы используете Windows, htdocs обычно находится в папке C:\xampp\.

<?php
//specify the server name
$server_name = "localhost";

//specify the username
$user_name = "root";

//specify the password - Here, the password is empty
$password = "";

//specify the database name
$database_name = "my_company";

// Creating the connection by specifying the connection details
$connection = mysqli_connect($server_name, $user_name, $password, $database_name);

//delete record with id-3
$query = "DELETE FROM sales where id=3";

if (mysqli_multi_query($connection, $query)) {
  echo "record deleted Successfully";
} else {
  echo "Error:" . mysqli_error($connection);
}

//close the connection
mysqli_close($connection);
?>

Откройте веб-браузер и перейдите по адресу http://localhost/delete.php. Вы увидите такой вывод в окне браузера.

УДАЛИТЬ строки из таблицы MySQL с помощью PHP

Вы можете проверить, действительно ли строка удалена, на панели управления PhpMyAdmin.

Откройте панель управления phpMyAdmin, перейдя по URL-адресу http://localhost/phpmyadmin в браузере.

Нажмите «Обзор», чтобы просмотреть оставшиеся записи.

Просмотр записей в таблице MySQL

Как видите, строка с id=3 исчезла.

Усечь таблицу MySQL с помощью PHP

Команда TRUNCATE используется для удаления всех строк из таблицы базы данных MySQL.

Синтаксис запроса:

TRUNCATE TABLE table_name;

Пример кода:

В этом примере мы удалим все строки.

Создайте текстовый файл с именем truncate.php со следующим содержимым.

<?php
//specify the server name
$server_name = "localhost";

//specify the username
$user_name = "root";

//specify the password - it is empty
$password = "";

//specify the database name
$database_name = "my_company";

// Creating the connection by specifying the connection details
$connection = mysqli_connect($server_name, $user_name, $password, $database_name);

//delete all records
$query = "TRUNCATE table sales";


if (mysqli_multi_query($connection, $query)) {
  echo "Truncated Successfull";
} else {
  echo "Error:" . mysqli_error($connection);
}

//close the connection
mysqli_close($connection);
?>

Перейдите к файлу http://localhost/truncate.php в веб-браузере. В окне браузера вы увидите сообщение «Усечено успешно».

Перейдите на панель управления phpMyAdmin и нажмите «Обзор», чтобы проверить, существуют ли какие-либо записи.

Усечь таблицу MySQL с помощью PHP

Как вы можете видеть на скриншоте выше, все записи удалены.

УДАЛИТЬ таблицу MySQL с помощью PHP

Команда DROP используется для удаления всей таблицы.

Синтаксис запроса:

DROP TABLE table_name;

Пример кода:

В этом примере мы удалим всю таблицу вместе с ее структурой (строками и столбцами).

Создайте текстовый файл с именем drop.php со следующим содержимым:

<?php
//specify the server name
$server_name = "localhost";

//specify the username
$user_name = "root";

//specify the password - it is empty
$password = "";

//specify the database name
$database_name = "my_company";

// Creating the connection by specifying the connection details
$connection = mysqli_connect($server_name, $user_name, $password, $database_name);

$query = "DROP table sales";


if (mysqli_multi_query($connection, $query)) {
  echo "Dropped Successfully";
} else {
  echo "Error:" . mysqli_error($connection);
}

//close the connection
mysqli_close($connection);
?>

Откройте веб-браузер и перейдите по адресу http://localhost/drop.php, и вы увидите сообщение "Успешно удалено".

Зайдите в phpMyAdmin и проверьте, существует ли таблица или нет.

УДАЛИТЬ таблицу MySQL с помощью PHP

Да, в базе данных my_company нет такой таблицы «продажи». Мы просто удалили его с помощью команды DROP.

Заключение

В этом пошаговом руководстве мы обсудили три команды MySQL, а именно DELETE, TRUNCATE и DROP. Используя эти три команды, мы показали вам, как удалить одну строку из таблицы MySQL, удалить все строки в таблице и, наконец, удалить всю таблицу с помощью PHP.

Статьи по данной тематике