# 软删除数据集
#### 语法格式
```
DROP DATASET [IF EXISTS] dataset_name [PURGE]
```
- **PURGE**：表示删除Dataset的数据。
- **IF EXISTS**：如果指定此项，当Dataset不存在时不会抛出错误。
- **dataset_name**：要删除的Dataset名称。如果未指定IF EXISTS且找不到Dataset，Spark将抛出错误。
**对于Managed Dataset:**
指定PURGE：更新元数据条目，并将底层数据文件移动到回收站。
未指定PURGE：仅更新元数据条目。
**对于External Dataset:**
仅更新元数据条目，但底层文件永远不会被删除。因此，无论是否指定PURGE，对External Dataset都没有影响。
软删除的Dataset可以恢复或永久删除。
如果Database中存在Dataset，删除Database将失败。删除Database时，要么Database为空（不包含任何Dataset），要么需要传递cascade参数，以便递归删除Database中的所有实体。
#### 代码示例
```
DROP DATASET IF EXISTS my_dataset 
DROP DATASET IF EXISTS my_dataset PURGE
```
