Удаление таблиц (компонент Database Engine) — SQL Server

Twitter LinkedIn Facebook Адрес электронной почты

  • Статья
  • Чтение занимает 2 мин

Применимо к: SQL Server 2016 (13. x) и более поздних версий Azure SQL DatabaseУправляемый экземпляр SQL AzureAzure Synapse Analytics AnalyticsPlatform System (PDW)

Вы можете удалить таблицу из базы данных в SQL Server с помощью SQL Server Management Studio или Transact-SQL.

Внимание!

Каждое удаление таблицы следует тщательно планировать. Если на таблицу ссылаются существующие запросы, представления, определяемые пользователем функции, хранимые процедуры или программы, то удаление сделает эти объекты недействительными.

В этом разделе

  • Перед началом работы

    Ограничения

    Безопасность

  • Удаление таблицы с помощью следующих средств:

    Среда SQL Server Management Studio

    Transact-SQL

Перед началом

Ограничения

  • Инструкцию DROP TABLE нельзя использовать для удаления таблицы, на которую ссылается ограничение FOREIGN KEY. Сначала следует удалить ссылающееся ограничение FOREIGN KEY или ссылающуюся таблицу. Если и ссылающаяся таблица, и таблица, содержащая первичный ключ, удаляются с помощью одной инструкции DROP TABLE, ссылающаяся таблица должна быть первой в списке.

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

  • При удалении таблицы, которая содержит столбец varbinary (max) с атрибутом FILESTREAM, не будут удалены никакие данные, которые хранятся в файловой системе.

  • Инструкции DROP TABLE и CREATE TABLE нельзя выполнять для одной таблицы в одном пакете. В противном случае может произойти непредвиденная ошибка.

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

Безопасность

Разрешения

Необходимо разрешение ALTER на схему, к которой принадлежит эта таблица, разрешение CONTROL для этой таблицы или членство в предопределенной роли базы данных db_ddladmin .

Использование среды SQL Server Management Studio

Удаление таблицы из базы данных
  1. В обозревателе объектов выберите таблицу, которую необходимо удалить.

  2. Щелкните таблицу правой кнопкой мыши и в контекстном меню выберите Удалить .

  3. Появится окно подтверждения удаления. Нажмите кнопку Да.

    Примечание

    При удалении таблицы автоматически удаляются все связи с ней.

Использование Transact-SQL

Удаление таблицы в редакторе запросов
  1. В обозревателе объектовподключитесь к экземпляру компонента Компонент Database Engine.

  2. На стандартной панели выберите пункт Создать запрос.

  3. Скопируйте следующий пример в окно запроса и нажмите кнопку Выполнить.

    DROP TABLE dbo.PurchaseOrderDetail;  
    

Дополнительные сведения см. в разделе DROP TABLE (Transact-SQL)

Как очистить таблицу в MySQL

В статье мы расскажем, как в MySQL очистить таблицу. Мы покажем два способа и объясним разницу между ними.

Очистить таблицу можно при помощи одной из команд:

  • TRUNCATE
    ,
  • DELETE.

Разница между TRUNCATE и DELETE

Команда TRUNCATE является оператором DDL. DDL (Data Definition Language) — это язык определения данных. Операторы языка DDL управляют объектами баз данных: удаляют, создают или переименовывают объекты БД.

Команда DELETE является DML-оператором. DML (Data Manipulation Language) — это язык манипуляции данными. Операторы языка DML позволяют вставить, удалить, изменить, извлечь или обновить данные в базе.

Сравним работу команд:

TRUNCATEDELETE
Удаляет все данные из таблицыМожет удалить часть данных в соответствии с условием WHERE
Удаляет все строки из таблицы освобождением страницУдаляет строки по одной
Записывает в журнал транзакций сведения о каждой удалённой странице, а не строкеДелает запись в журнал транзакций при удалении каждой строки
Работает быстрееРаботает медленнее
Нужны привилегии ALTERНужны привилегии DELETE
Сбрасывает идентификаторыНе сбрасывает идентификаторы
Блокирует таблицу и страницу перед удалениемБлокирует строку перед её удалением

Выбор команды зависит от конкретного случая. Если нужно удалить некоторые строки по условию, подойдёт только DELETE. Если нужно полностью очистить таблицу и сбросить идентификаторы, используйте TRUNCATE.

Понять разницу между командами и определиться с их выбором поможет таблица с операторами каждого языка:

DDLDML
CREATESELECT
ALTERINSERT
DROPUPDATE
TRUNCATEDELETE
COMMENTMERGE
RENAMECALL
EXPLAIN PLAN
LOCK TABLE

Таким образом, операторы DDL управляют структурой, а операторы DML — её содержимым.

Как в MySQL очистить таблицу

Подключитесь к серверу по SSH. Затем подключитесь к MySQL при помощи команды:

mysql -u username -p’password’

Вместо username введите имя пользователя, вместо password — пароль.

Если вы не знаете пароль, попробуйте войти без него при помощи команды:

Если подключение без пароля не настроено, возникнет ошибка:

В этом случае сбросьте пароль от root-пользователя MySQL по инструкции.

TRUNCATE

TRUNCATE полностью очищает таблицу без возможности указать дополнительные условия. Для этого:

  1. 1.

    Выберите базу данных, в которой находится таблица, которую вы хотите очистить:

    USE db_name;

    Вместо db_name введите имя базы данных.

  2. 2.

    Очистите таблицу при помощи команды:

    TRUNCATE table_name;

    TRUNCATE позволяет указать название БД и название таблицы в одном запросе. Для этого используйте команду:

    TRUNCATE db_name.table_name;

    Вместо db_name введите имя базы данных, а вместо table_name введите имя таблицы.

Готово, вы очистили таблицу.

DELETE

  1. 1.

    Выберите базу данных, в которой находится таблица, которую вы хотите очистить:

    USE db_name;

    Вместо db_name введите имя базы данных.

  2. 2.

    Очистите таблицу при помощи команды:

    DELETE FROM table_name;

    Вы можете указать название БД и таблицы в одном запросе:

    DELETE FROM db_name.table_name;

    Вместо db_name введите имя базы данных, а вместо table_name введите имя таблицы.

Готово, вы очистили таблицу при помощи DELETE.

Совет

DELETE позволяет использовать условие WHERE, чтобы удалить некоторые строки из таблицы:

DELETE FROM table_name WHERE condition;

Где condition — это условие.

Пример команды, в котором будут удалены все строки, значение столбца, id которых больше 1000:

DELETE FROM table_name WHERE id > 1000;

Как проверить содержимое таблицы

Если вы хотите убедиться, что в таблице не осталось данных, воспользуйтесь командой:

SELECT * FROM db_name.table_name;

Вместо db_name введите имя базы данных, а вместо table_name введите имя таблицы.

Если таблица пустая, вывод будет следующим:

Помогла ли вам статья?

Да

раз уже
помогла

Оператор SQL DELETE

❮ Предыдущий Далее ❯


Оператор SQL DELETE

Оператор DELETE используется для удаления существующих записей в таблице.

УДАЛИТЬ Синтаксис

УДАЛИТЬ ИЗ имя_таблицы ГДЕ условие ;

Примечание: Будьте осторожны при удалении записей в таблице! Обратите внимание на Пункт WHERE в УДАЛИТЬ оператор . Предложение WHERE указывает, какие записи следует удалить. Если ты пропускаешь WHERE , все записи в таблице будут удалены!


Демонстрационная база данных

Ниже приведена выборка из таблицы «Клиенты» в образце «Борей» база данных:

CustomerID ИмяКлиента Контактное имя Адрес Город Почтовый индекс Страна
1 Альфред Футтеркисте Мария Андерс ул. Обере 57 Берлин 12209 Германия
2 Ана Трухильо Emparedados y helados Ана Трухильо Авда. Конститусьон 2222 Мексика Д.Ф. 05021 Мексика
3 Антонио Морено Такерия Антонио Морено Матадерос 2312 Мексика Д.Ф. 05023 Мексика
4 Вокруг Рога Томас Харди Ганноверская площадь, 120 Лондон ВА1 1ДП Великобритания
5 Берглундс снаббкёп Кристина Берглунд Бергувсвеген 8 Лулео С-958 22 Швеция


SQL DELETE Пример

Следующая инструкция SQL удаляет клиента «Alfreds Futterkiste» из таблица «Клиенты»:

Пример

УДАЛИТЬ ИЗ КЛИЕНТОВ ГДЕ CustomerName=’Альфред Футтеркисте’;

Попробуйте сами »

Теперь таблица «Клиенты» будет выглядеть так:

CustomerID ИмяКлиента Контактное имя Адрес Город Почтовый индекс Страна
2 Ана Трухильо Emparedados y helados Ана Трухильо Авда. Конститусьон 2222 Мексика Д.Ф. 05021 Мексика
3 Антонио Морено Такерия Антонио Морено Матадерос 2312 Мексика Д.Ф. 05023 Мексика
4 Вокруг Рога Томас Харди Ганноверская площадь, 120 Лондон ВА1 1ДП Великобритания
5 Берглундс снаббкёп Кристина Берглунд Бергувсвеген 8 Лулео С-958 22 Швеция

Удалить все записи

Можно удалить все строки в таблице, не удаляя саму таблицу. Этот означает, что структура таблицы, атрибуты и индексы останутся нетронутыми:

УДАЛИТЬ ИЗ имя_таблицы ;

Следующая инструкция SQL удаляет все строки в таблице «Клиенты», без удаления таблицы:

Пример

УДАЛИТЬ ИЗ Клиентов;

Попробуйте сами »


Проверьте себя с помощью упражнений

Упражнение:

Удалите все записи из таблицы Customers , где значение Country равно «Норвегия».

 Клиенты
 Страна = «Норвегия»;
 

Начать упражнение

❮ Предыдущий Следующий ❯


ВЫБОР ЦВЕТА



Лучшие учебники
Учебник HTML
Учебник CSS
Учебник JavaScript
How To Tutorial
Учебник SQL
Учебник Python
Учебник W3.CSS
Учебник Bootstrap
Учебник PHP
Учебник Java
Учебник C++
Учебник jQuery
Top 6s

3

9000 Справочник по HTML
Справочник по CSS
Справочник по JavaScript
Справочник по SQL
Справочник по Python
Справочник по W3.CSS
Справочник по Bootstrap
Справочник по PHP
Цвета HTML
Справочник по Java
Справочник по Angular
Справочник по jQuery

Лучшие примеры
Примеры HTML
Примеры CSS
Примеры JavaScript
Примеры инструкций
Примеры SQL
Примеры Python
Примеры W3.CSS
Примеры Bootstrap
Примеры PHP
Примеры Java
Примеры XML
Примеры jQuery


ФОРУМ | О

W3Schools оптимизирован для обучения и обучения. Примеры могут быть упрощены для улучшения чтения и обучения. Учебники, ссылки и примеры постоянно пересматриваются, чтобы избежать ошибок, но мы не можем гарантировать полную правильность всего содержания. Используя W3Schools, вы соглашаетесь прочитать и принять наши условия использования, куки-файлы и политика конфиденциальности.

Copyright 1999-2023 Refsnes Data. Все права защищены.
W3Schools работает на основе W3.CSS.

Удалить таблицы (ядро СУБД) — SQL Server

Редактировать

Твиттер LinkedIn Фейсбук Электронная почта

  • Статья
  • 2 минуты на чтение

Применимо к: SQL Server 2016 (13. x) и более поздние версии База данных SQL Azure Управляемый экземпляр Azure SQL Azure Synapse Analytics Analytics Platform System (PDW)

Вы можете удалить (удалить) таблицу из базы данных SQL Server с помощью SQL Server Management Studio или Transact-SQL.

Осторожно

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

В этой теме

  • Прежде чем начать:

    Ограничения и ограничения

    Безопасность

  • Чтобы удалить таблицу, используя:

    Студия управления SQL Server

    Трансакт-SQL

Перед началом работы

Ограничения и запреты

  • Нельзя удалить таблицу, на которую ссылается ограничение FOREIGN KEY. Ссылающееся ограничение FOREIGN KEY или ссылающаяся таблица должны быть сначала удалены. Если и ссылочная таблица, и таблица, содержащая первичный ключ, удаляются в одном и том же операторе DROP TABLE, ссылочная таблица должна быть указана первой.

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

  • Если удалить таблицу, содержащую столбец varbinary (max) с атрибутом FILESTREAM, никакие данные, хранящиеся в файловой системе, не будут удалены.

  • DROP TABLE и CREATE TABLE не должны выполняться для одной и той же таблицы в одном пакете. В противном случае может произойти непредвиденная ошибка.

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

Безопасность

Разрешения

Требуется разрешение ALTER на схему, к которой принадлежит таблица, разрешение CONTROL на таблицу или членство в db_ddladmin фиксированная роль базы данных.

Использование SQL Server Management Studio

Удаление таблицы из базы данных
  1. В обозревателе объектов выберите таблицу, которую требуется удалить.

  2. Щелкните таблицу правой кнопкой мыши и выберите Удалить в контекстном меню.

  3. В окне сообщения предлагается подтвердить удаление. Нажмите Да .

    Примечание

    При удалении таблицы автоматически удаляются все связи с ней.

Использование Transact-SQL

Чтобы удалить таблицу в редакторе запросов
  1. В Object Explorer подключитесь к экземпляру Database Engine.

  2. На стандартной панели щелкните Новый запрос .