SQL 创建与删除数据库基础语法详解

Aria
Aria
发布时间:2026-10-14| 5人浏览过
原创

在数据库管理中,创建和删除是最基础的库级操作。本文将详细解析 SQL 中使用 CREATE DATABASE 指定文件路径、初始大小及增长策略的完整语法,以及如何正确使用 DROP DATABASE 安全且彻底地删除不再需要的数据库对象。

1. 创建数据库 (Create Database)

在使用标准 SQL(以 T-SQL/SQL Server 为例)创建数据库时,可以通过显式定义主数据文件和事务日志文件的属性,来精确控制数据库的物理存储表现。这包括指定文件名、存储路径、初始容量以及自动增长规则。

第1步:编写完整的数据库创建语句

目的: 初始化数据库结构并分配磁盘空间。

核心语法: 使用 CREATE DATABASE 关键字,分别通过 ON PRIMARY 和 LOG ON 子句定义数据文件与日志文件。

CREATE DATABASE 数据库名称
ON PRIMARY
{
    name = '逻辑文件名',
    filename = 'c:\\xx\\物理文件名.mdf',  -- 注意路径中的双反斜杠转义
    size = 10MB,           -- 数据库初始大小
    filegrowth = 1MB,      -- 当初始空间不足时,每次增加的大小
    maxsize = 20MB         -- 空间上限,设为 UNLIMITED 表示无限制
}
LOG ON
{
    name = '逻辑文件名_log',
    filename = 'c:\\xx\\物理文件名_log.ldf',
    size = 5MB,
    filegrowth = 10%,        -- 支持按固定值(如1MB)或百分比(如10%)增长
    maxsize = 10MB           -- 日志文件大小限制
}

参数说明:

  • name: 数据库在系统内部识别的逻辑名称,通常与物理文件名一致但便于内部管理。
  • filename: 操作系统层面的实际文件路径。需确保运行 SQL 服务的用户对该目录有写入权限。Windows 路径建议使用双反斜杠 \\ 或正斜杠 /。
  • size: 初始分配的空间。单位为 KB、MB 或 GB。
  • filegrowth: 自动增长设置。可以是绝对数值(如 1MB)或百分比(如 10%)。合理设置此值可减少频繁的 I/O 开销。
  • maxsize: 允许扩展到的最大空间。若设置为 UNLIMITED,则仅受磁盘剩余容量限制;否则需手动监控以防写满。

2. 删除数据库 (Drop Database)

与创建不同,删除数据库的操作通常没有“回收站”机制(除非使用了特定的备份快照功能),一旦执行将无法直接恢复。因此,这是最高风险的操作之一。

第1步:确认需要删除的对象

重要提醒: 在执行删除前,请务必评估是否已备份重要数据。删除将清空所有表数据、视图、存储过程及用户定义。

第2步:执行删除命令

入口: SQL 查询分析器或命令行客户端。

动作: 只能使用 DROP DATABASE 语句,不能使用 DELETE 或 TRUNCATE(这些是针对表中数据的操作)。

DROP DATABASE 数据库名称;

完成状态: 执行成功后,对应的物理文件(.mdf 和 .ldf)将从服务器磁盘中移除,且该数据库在所有系统目录中不再可见。

常见问题排查

  • 报错:数据库正在使用中,无法删除。
    解决方法:首先执行 ALTER DATABASE 数据库名称 SET SINGLE_USER WITH ROLLBACK IMMEDIATE; 强制断开所有连接,然后再执行 DROP DATABASE 语句。

总结

掌握 CREATE DATABASE 的详细参数配置有助于优化数据库性能与存储空间管理,而熟练使用 DROP DATABASE 则是维护系统环境、清理冗余资源的必要技能。在实际操作中,请始终遵循“先备份后删除”的安全原则。

以上就是 SQL 创建与删除数据库基本语法的详细内容,更多关于 SQL 数据库管理的资料请关注本站其它相关文章!

相关标签:

免责声明:本文内容仅供参考,不代表本站观点。转载或引用请注明出处。

Python 相关产品和应用

全部下载
Selenium

Selenium

4.51.0 · Windows

用于浏览器自动化和 Web 测试的 Python 工具。

scikit-learn

scikit-learn

1.9.1 · Windows

常用 Python 机器学习算法与模型评估工具库。

Black

Black

26.10.1 · Windows

强调一致性的 Python 自动代码格式化工具。

Ruff

Ruff

0.17.1 · macOS

由 Rust 编写的高速 Python 代码检查和格式化工具。

pytest

pytest

9.1.1 · Windows

简洁而强大的 Python 自动化测试框架。

FastAPI

FastAPI

0.146.0 · Windows

高性能 Python API 框架,支持类型提示和自动接口文档。

Flask

Flask

3.1.3 · Windows

轻量灵活的 Python Web 应用框架。

Django

Django

6.1.2 · Windows

成熟的 Python Web 框架,适合构建内容站点和业务系统。

Spyder

Spyder

6.1.7 · Windows

面向科学计算与数据分析的 Python 集成开发环境。

SciPy

SciPy

1.18.1 · Windows

面向科学、工程和技术计算的 Python 算法库。