上一篇
如何用SQL命令创建数据库?
- 电脑教程
- 2025-06-03
- 3491
使用SQL命令
CREATE DATABASE 数据库名;
创建数据库,数据库名需唯一且符合命名规则,可添加可选参数如字符集
CHARACTER SET
或排序规则
COLLATE
进行设定。
通用SQL标准语法
CREATE DATABASE database_name [ [ WITH ] [ OWNER [=] user_name ] -- 指定所有者(PostgreSQL) [ ENCODING [=] encoding ] -- 设置字符集 [ COLLATE [=] collation ] -- 设置排序规则 ];
️ 注意:实际使用时需根据数据库系统调整参数。
主流数据库系统具体操作
MySQL / MariaDB
CREATE DATABASE sales_db -- 基础建库 CHARACTER SET utf8mb4 -- 推荐字符集(支持中文和表情) COLLATE utf8mb4_unicode_ci; -- 排序规则(区分大小写选utf8mb4_bin) -- 检查是否存在再创建(避免报错) CREATE DATABASE IF NOT EXISTS sales_db;
Microsoft SQL Server
CREATE DATABASE inventory_db ON PRIMARY -- 主数据文件 ( NAME = inv_data, FILENAME = 'C:MSSQLDATAinventory.mdf', -- 文件路径 SIZE = 100MB, MAXSIZE = UNLIMITED, FILEGROWTH = 10% ) LOG ON -- 日志文件 ( NAME = inv_log, FILENAME = 'C:MSSQLLOGinventory.ldf', SIZE = 50MB );
PostgreSQL
CREATE DATABASE hr_db WITH OWNER = admin_user -- 指定管理员 ENCODING = 'UTF8' -- 必须的字符集 CONNECTION LIMIT = 50;-- 最大连接数限制 -- 从模板复制数据库 CREATE DATABASE hr_backup TEMPLATE hr_db;
SQLite
-- SQLite无需显式建库,首次连接时自动创建 sqlite3 /path/to/employees.db # 终端命令直接生成
关键参数详解
参数 | 作用 | 应用场景示例 |
---|---|---|
CHARACTER SET |
字符编码 | utf8mb4 (兼容4字节字符) |
COLLATE |
排序规则 | utf8_general_ci (不区分大小写) |
OWNER |
数据库所有者 | 权限管理 |
TEMPLATE |
复制模板数据库 | 快速备份 |
CONNECTION LIMIT |
最大并发连接数 | 资源控制 |
操作安全与验证
-
权限要求:
- MySQL:需
CREATE DATABASE
权限 - SQL Server:需
CREATE ANY DATABASE
权限 - PostgreSQL:需
CREATEDB
权限
- MySQL:需
-
验证是否成功:
SHOW DATABASES; -- MySQL SELECT name FROM sys.databases; -- SQL Server l -- PostgreSQL命令行
-
删除数据库(谨慎操作):
DROP DATABASE IF EXISTS old_db; -- 通用语法
常见错误解决方案
-
错误1007:数据库已存在
使用CREATE DATABASE IF NOT EXISTS
规避 -
错误1044:权限不足
联系管理员授权:GRANT CREATE ON *.* TO 'user'@'localhost'; -- MySQL示例
-
文件路径无效(SQL Server)
确保目录存在且服务账户有写入权限
最佳实践建议
- 命名规范:使用小写字母+下划线(如
finance_db
) - 字符集统一:业务涉及多语言时务必用
UTF-8
- 生产环境操作:
- 提前评估存储空间
- 避开业务高峰期执行
- 备份现有数据库(
mysqldump
/pg_dump
)
提示:阿里云等云数据库需通过控制台或API创建,命令可能受限。
引用说明: 参考官方文档:
- MySQL 8.0 Reference Manual
- Microsoft Docs: CREATE DATABASE (Transact-SQL)
- PostgreSQL 15 Documentation
SQL标准遵循ISO/IEC 9075:2025,操作前请务必查阅所用数据库的版本说明。