Удаление таблиц (компонент 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
Удаление таблицы из базы данных
В обозревателе объектов выберите таблицу, которую необходимо удалить.
Щелкните таблицу правой кнопкой мыши и в контекстном меню выберите Удалить .
Появится окно подтверждения удаления. Нажмите кнопку Да.
Примечание
При удалении таблицы автоматически удаляются все связи с ней.
Использование Transact-SQL
Удаление таблицы в редакторе запросов
В обозревателе объектовподключитесь к экземпляру компонента Компонент Database Engine.
На стандартной панели выберите пункт Создать запрос.
Скопируйте следующий пример в окно запроса и нажмите кнопку Выполнить.
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 позволяют вставить, удалить, изменить, извлечь или обновить данные в базе.
Сравним работу команд:
TRUNCATE | DELETE |
---|---|
Удаляет все данные из таблицы | Может удалить часть данных в соответствии с условием WHERE |
Удаляет все строки из таблицы освобождением страниц | Удаляет строки по одной |
Записывает в журнал транзакций сведения о каждой удалённой странице, а не строке | Делает запись в журнал транзакций при удалении каждой строки |
Работает быстрее | Работает медленнее |
Нужны привилегии ALTER | Нужны привилегии DELETE |
Сбрасывает идентификаторы | Не сбрасывает идентификаторы |
Блокирует таблицу и страницу перед удалением | Блокирует строку перед её удалением |
Выбор команды зависит от конкретного случая. Если нужно удалить некоторые строки по условию, подойдёт только DELETE. Если нужно полностью очистить таблицу и сбросить идентификаторы, используйте TRUNCATE.
Понять разницу между командами и определиться с их выбором поможет таблица с операторами каждого языка:
DDL | DML |
---|---|
CREATE | SELECT |
ALTER | INSERT |
DROP | UPDATE |
TRUNCATE | DELETE |
COMMENT | MERGE |
RENAME | CALL |
EXPLAIN PLAN | |
LOCK TABLE |
Таким образом, операторы DDL управляют структурой, а операторы DML — её содержимым.
Как в MySQL очистить таблицу
Подключитесь к серверу по SSH. Затем подключитесь к MySQL при помощи команды:
mysql -u username -p’password’
Вместо username введите имя пользователя, вместо password — пароль.
Если вы не знаете пароль, попробуйте войти без него при помощи команды:
Если подключение без пароля не настроено, возникнет ошибка:
В этом случае сбросьте пароль от root-пользователя MySQL по инструкции.
TRUNCATE
TRUNCATE полностью очищает таблицу без возможности указать дополнительные условия. Для этого:
- 1.
Выберите базу данных, в которой находится таблица, которую вы хотите очистить:
USE db_name;
Вместо db_name введите имя базы данных.
- 2.
Очистите таблицу при помощи команды:
TRUNCATE table_name;
TRUNCATE позволяет указать название БД и название таблицы в одном запросе. Для этого используйте команду:
TRUNCATE db_name.table_name;
Вместо db_name введите имя базы данных, а вместо table_name введите имя таблицы.
Готово, вы очистили таблицу.
DELETE
- 1.
Выберите базу данных, в которой находится таблица, которую вы хотите очистить:
USE db_name;
Вместо db_name введите имя базы данных.
- 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
Удаление таблицы из базы данных
В обозревателе объектов выберите таблицу, которую требуется удалить.
Щелкните таблицу правой кнопкой мыши и выберите Удалить в контекстном меню.
В окне сообщения предлагается подтвердить удаление. Нажмите Да .
Примечание
При удалении таблицы автоматически удаляются все связи с ней.
Использование Transact-SQL
Чтобы удалить таблицу в редакторе запросов
В Object Explorer подключитесь к экземпляру Database Engine.
На стандартной панели щелкните Новый запрос .