Transact-SQL 参考

DROP TABLE

删除表定义及该表的所有数据、索引、触发器、约束和权限规范。任何引用已除去表的视图或存储过程必须通过 DROP VIEW 或 DROP PROCEDURE 语句显式除去。

语法

DROP TABLE table_name

参数

table_name

是要删除的表名。

注释

DROP TABLE 不能用于除去由 FOREIGN KEY 约束引用的表。必须先除去引用的 FOREIGN KEY 约束或引用的表。

表所有者可以除去任何数据库内的表。除去表时,表上的规则或默认值将解除绑定,任何与表关联的约束或触发器将自动除去。如果重新创建表,必须重新绑定适当的规则和默认值,重新创建任何触发器并添加必要的约束。

在系统表上不能使用 DROP TABLE 语句。

如果删除表内的所有行 (DELETE tablename) 或使用 TRUNCATE TABLE 语句,则表将一直存在到被除去。

权限

默认情况下,将 DROP TABLE 权限授予表所有者,该权限不可转让。然而,sysadmin 固定服务器角色成员或 db_ownerdb_ddladmin 固定数据库角色成员可以通过在 DROP TABLE 内指定所有者除去任何对象。

示例
A. 除去当前数据库内的表

下例从当前数据库中删除 titles1 表及其数据和索引。

DROP TABLE titles1
B. 除去另外一个数据库内的表

下例除去 pubs 数据库内的 authors2 表。可以在任何数据库内执行此操作。

DROP TABLE pubs.dbo.authors2

请参见

ALTER TABLE

CREATE TABLE

DELETE

sp_depends

sp_help

sp_spaceused

TRUNCATE TABLE