Truncate Table PostgreSQL

PostgreSQL с использованием данных База данных

PostgreSQL — это бесплатная база данных с открытым исходным кодом, представляющая собой эффективную систему управления базами данных. Он написан на языке программирования Си. PostgreSQL поддерживает несколько операционных систем, таких как Windows, macOS, Linux и т. д.

В соответствии с требованием к таблицам применяются команды для изменения таблицы и данных в ней. Точно так же в некоторых ситуациях нам нужно очистить пространство таблиц, не удаляя всю таблицу. Для этой цели PostgreSQL поддерживает оператор таблицы TRUNCATE для эффективного удаления всех данных из больших таблиц. Оператор TRUNCATE удаляет все строки из таблицы без сканирования. Эта функция отличает его от оператора DELETE.

Оператор truncate — это безопасный для транзакций оператор в PostgreSQL. Для окончательного удаления записи с помощью оператора усечения нам нужно использовать оператор COMMIT. Но если мы не использовали оператор COMMIT, то все изменения, удаление записи можно отменить. Функция оператора truncate такая же, как и оператора DELETE. В команде удаления предложение where является важной частью для идентификации целевой строки. Если мы используем предложение where, то оператор удаления удалит определенную строку или строки. По сравнению с оператором удаления, оператор усечения удаляет данные быстрее.

Предпосылка

Мы использовали базу данных PostgreSQL в Windows 10. Пользователь должен настроить базу данных с помощью имени пользователя и пароля.

Синтаксис таблицы TRUNCATE

Синтаксис оператора truncate зависит от ситуации. В каждом примере мы объяснили синтаксис. Рассмотрим один оператор усечения таблицы.

Truncate table name_of_table (имя таблицы, к которой должен применяться оператор truncate);

Применить оператор Truncate к одной таблице

Для процесса реализации нам нужно создать таблицу с именем car. Эта таблица содержит все данные, относящиеся к автомобилю, включая идентификатор, имя и модель автомобиля в качестве атрибутов каждого автомобиля. Чтобы создать таблицу, мы используем команду CREATE PostgreSQL.

>> CREATE TABLE car ( id INT, name CHAR(50), model CHAR(50));

Когда вы пишете команду, сообщение CREATE TABLE указывает на успешное создание таблицы. После создания таблицы необходимо вставить данные в каждый столбец. Поэтому для этой цели мы используем команду INSERT.

>> INSERT INTO car (id, name, model) VALUES (1, ‘ford’ , ‘1990’), (2, ‘honda’, ‘2005’), (3, ‘toyota’, ‘2010’), (4, ‘suzuki’ , ‘1995’), (5, ‘ Hundai’ , ‘1999’);

Эта команда введет соответствующие данные, так как последняя строка указывает количество строк, введенных в таблицу. Используйте приведенный ниже оператор, чтобы увидеть вставленные данные в таблицу.

>> SELECT * FROM car;

Поскольку эти данные должны быть удалены оператором TRUNCATE, мы будем использовать команду truncate для удаления всех данных, присутствующих внутри таблицы car.

>> TRUNCATE TABLE car;

Вы можете видеть, что отображается сообщение об усечении таблицы. Для подтверждения, а также для просмотра состояния таблицы после команды усечения мы увидим таблицу с помощью команды выбора. Вы заметите, что после усечения отображаются только имена столбцов, а все данные будут удалены. Для повторного ввода данных мы снова воспользуемся оператором INSERT.

Применить к Truncate более чем одной таблицы

Синтаксис

>> TRUNCATE TABLE table_name1, table_name2,,(TABLE name ON which we apply TRUNCATE statement);

Чтобы удалить данные из более чем одной таблицы одновременно с помощью одной команды, PostgreSQL предоставляет нам эту возможность внутри команды truncate. Итак, для реализации рассмотрим две таблицы «предметы», а другая — «автомобиль».

Принимая во внимание, что таблица элементов содержит данные о предметах. См. изображение ниже, чтобы увидеть данные в таблице.

>> SELECT * FROM items;

Теперь мы должны применить оператор truncate к обеим вышеупомянутым таблицам. Функция TRUNCATE для нескольких таблиц полезна в PostgreSQL, так как она работает эффективно, затрачивая меньше времени на удаление данных из нескольких таблиц. В противном случае ручное удаление данных также требует времени и затрат.

>> TRUNCATE TABLE car, items;

Используйте оператор SELECT, чтобы увидеть результат.

Truncate Table с помощью удостоверения перезапуска

Синтаксис

>> TRUNCATE TABLE TABLE_NAME [Restart IDENTITY]

Иногда удаление данных не является требованием запроса. В этой ситуации мы хотим сбросить все значения с самого начала в столбце идентификаторов. Для этой цели мы используем ключевое слово RESTART в команде truncate.

>> TRUNCATE TABLE items RESTART IDENTITY;

Эта команда удалит все строки из таблицы элементов и сбросит последовательность, связанную со столбцом items_id.

Применить для Truncate Table со ссылками на внешний ключ

В любом случае, если вы хотите удалить все строки таблицы, содержащие ссылки внешнего ключа на любую другую таблицу, которую мы не упомянули в операторе таблицы усечения, мы используем такую ​​команду усечения. Как правило, оператор truncate не удаляет данные из таблицы, имеющей ограничения внешнего ключа. Мы используем параметр CASCADE, чтобы удалить все ограничения в операторе truncate table.

Рассмотрим таблицу student, имеющую столбец внешнего ключа, связанный с учителем.

Рассмотрим таблицу student, имеющую столбец внешнег

Мы применим команду truncate с ключевым словом CASCADE, чтобы удалить все данные из таблицы, содержащие внешние ограничения.

>> TRUNCATE TABLE student CASCADE;
>> SELECT * FROM student;

Вы видите, что все данные из таблицы удалены.

Применение команды TRUNCATE через pgAdmin

Чтобы увидеть реализацию, перейдите в файл pgAdmin. Для этого потребуется пароль, а затем будет создано соединение с базой данных.

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

Создается новая таблица с информацией о фруктах.

>> SELECT * FROM fruits;

ается новая таблица с информацией о

Во-первых, мы будем использовать команду для усечения данных.

Во-первых, мы будем использо

Снова используйте оператор SELECT, чтобы увидеть всю пустую таблицу.

используйте оператор SELECT, чтобы увидеть

Кроме команд, сейчас мы рассмотрим здесь опции. Разверните базу данных с левой стороны. Вы увидите дополнительные параметры. Разверните дальше схемы, ведущие к таблицам, вы увидите все таблицы, созданные в текущей базе данных. Чтобы открыть «элементы» одной таблицы, щелкните ее правой кнопкой мыши. Здесь вы увидите раскрывающийся список. Это будет содержать несколько опций, включая DROP CASCADE. Это будет работать так же, как описано в примере, в котором использовалось ключевое слово CASCADE в команде. Другой вариант — СБРОС СТАТИСТИКИ. Это сбросит таблицу, как мы это сделали, используя RESTART IDENTITY.

Чтобы открыть «элементы» одной таблицы, щелкните ее правой

Заключение

Эта статья «Усечение таблицы Postgres» относится к базе данных PostgreSQL, установленной и настроенной в Windows 10. Феномен усечения и его работа объясняются в этой статье со всеми синтаксисами в зависимости от ситуации применения команды. Усечение используется для одной и нескольких таблиц, а также для эффективного удаления нежелательных данных за меньшее время. Рекомендуется использовать оператор фиксации для окончательного удаления всех данных в таблице. Мы использовали элементарные примеры, в которых таблицы усекаются отдельно в каждом примере с использованием CASCADE и перезапуска идентификации. И PostgreSQL, и pgAdmin объясняют работу оператора truncate.

Читайте также:  Как скопировать или клонировать базу данных MySQL?
Оцените статью
bestprogrammer.ru
Добавить комментарий