DBeaver的使用
一、DBeaver是什么?
DBeaver 是一款免费开源的通用数据库管理工具,支持几乎所有主流数据库。
- DBeaver 就像是 Navicat 的免费替代品。因为Navicat 是收费的,想要免费使用就要破解,而破解就涉及侵权。所以,很多公司为了免费又不侵权,就选择使用DBeaver 来替代 Navicat 。
- DBeaver 基于 Eclipse 开发,采用 Java 编写
二、DBeaver的使用
1、连接数据库、创建库
1.1 连接数据库
步骤:
-
点击左上角 「新建数据库连接」 图标
-
选择数据库类型(如 MySQL)

新建连接-1 -
填写连接信息:
- 服务器地址:数据库服务器地址(
localhost表示本机) - Port:MySQL默认
3306 - Database:数据库名(可选,连接后可选择)
- 用户名:数据库用户名(如:
root) - 密码:数据库密码
- 服务器地址:数据库服务器地址(
-
点击 「测试连接」 验证配置
-
首次连接会提示下载驱动,点击 「下载」
-
测试通过后点击 「完成」

新建连接-2
1.2 创建数据库
方法一:右键菜单
-
在连接名下的数据库上 右键 → 选择 「新建数据库」

新建数据库 -
填写数据库名、字符集、排序规则
- 数据库名:输入数据库名称,安装公司规范命名,公司没有相关规范,就按照通用规范,比如小写优先、下划线分割、命名反应业务等。
- 字符集:可以看你们别的库的字符集设置的什么,跟别的库保持一致的字符集。如果,没有其他可参考的库,推荐选择
utf8mb4 - 排序规则:同字符集,没有可参考的推荐选择
utf8mb4_general_ci或utf8mb4_unicode_ci
-
点击 「确定」

新建数据库-2
2、导出SQL脚本和执行SQL脚本
2.1 导出SQL脚本(备份)
步骤:
-
选中要导出的 数据库 或 表
-
右键 → 「工具」 → 「转储数据库」

导出sql脚本-1 -
选择导出对象:

导出sql脚本-2 -
导出配置
该界面可以配置导出路径,导出文件名等,设置完之后点击 开始。

导出sql脚本-3
💡 使用场景:
- 代码版本控制时导出表结构
- 环境迁移时导出完整数据
- 备份重要表数据
2.2 执行SQL脚本(导入)
步骤:
-
选中目标 数据库
-
右键 → 「工具」 → 「恢复数据库」

导入sql脚本-1 -
选择要导入的
.sql文件 -
点击 「开始」 开始导入

导入sql脚本-2
⚠️ 新人踩坑点:
- 大文件导入时内存不足,需要调整JVM参数
- SQL文件编码不对导致中文乱码(确保UTF-8编码)
- 导入前确保选中了正确的数据库
3、新建表、修改表
3.1 新建表
步骤:
-
选中 数据库 → 右键 → 「新建表」
-
在表设计器中添加字段:

新建表
| 设置项 | 推荐设置 |
|---|---|
| 列名 | 般规范就是使用小写字母+下划线,如 user_name |
| 数据类型 | VARCHAR、INT、DATETIME 等,字段长度在类型后的括号里面设置,比如VARCHAR(50) |
| 非空 | 主键不勾选 |
| 自增 | 一般主键ID勾选 |
| 默认值 | 如 CURRENT_TIMESTAMP |
| 注释 | 添加字段注释 |
| 约束 | 这里设置主键字段 |
-
设置索引

新建索引 -
点击 「保存」 → 「执行」
常用数据类型:
-- 字符串VARCHAR(255) -- 变长字符串(推荐)TEXT -- 长文本CHAR(1) -- 固定长度(如:性别)
-- 数字INT -- 整数BIGINT -- 长整数(主键ID)DECIMAL(10,2) -- 金额字段TINYINT(1) -- 布尔值
-- 日期时间DATETIME -- 日期时间TIMESTAMP -- 时间戳(自动更新)DATE -- 日期💡 命名规范:
如果公司有命名规范就按照公司的命名规范。如果没有的话,就可以遵循如下一般规范即可。
- 表名:
t_模块名或tb_模块名,如t_user、tb_order - 字段名:小写字母+下划线,如
user_name、create_time
3.2 修改表结构
修改表字段,如果是开发环境、测试环境一般都可以直接修改。如果是生产环境在修改的时候,一定要确认清楚你们可不可以直接修改。如果不可以的话,确认需要走什么样的流程,然后按照流程去走。
进入设计视图:
- 选中表 → 右键双击 → 进入和新建表一样的界面,进行对应修改

- ⚠️ 注意:
- 修改已存在字段的类型可能导致数据丢失
- 删除字段前请确认没有代码在使用
- 修改表结构最好先备份!
4、数据筛选和排序

5、执行SQL语句
5.1 打开SQL编辑器

5.2 编写和执行SQL

⚠️ 新人踩坑点:
- 忘记加WHERE条件,导致全表更新/删除
- 选错库执行
- SQL语句末尾没加分号
- 多行SQL时光标位置错误,执行了不该执行的语句
💡 安全习惯:
- 先SELECT查询确认
- 再UPDATE/DELETE修改
- 执行前检查WHERE条件
- 重要操作前备份数据
6、导出Excel、导入Excel
DBeaver 本身不支持将表数据导出为Excel表格文件。不过可以导出为CSV文件,然后转成Excel文件。导入的文件如果是Excel文件,可以把Excel文件转成CSV文件,再导入。转换方式可以使用这个在线转行网站进行转行https://csvtoexcel.net/zh-cn/excel-to-csv
6.1 导出CSV
步骤:
-
选中目标 表 → 右键 → 导出数据

导出数据-1 -
选择导出格式:CSV

导出数据-3 -
点击 **「下一步」**到如下界面 → 设置保存位置、文件名

导出数据-2 -
点击 「下一步」 → 「继续」
6.2 导入CSV
步骤:
-
选中目标 表 → 右键 → 「导入数据」

导入数据-1 -
选择数据来源:CSV

导入数据-2 -
选择要导入的CSV文件

导入数据-3 -
配置字段映射:
-
确认Excel列与表字段的对应关系
-
设置数据类型转换

导入数据-4
-
-
点击 「下一步」 → 「继续」
⚠️ 新人踩坑点:
- Excel列顺序与表字段不匹配
- 日期格式转换失败
- Excel中有合并单元格
- 数字字段包含非数字字符
💡 导入前检查:
- 确认列名与字段一致
- 检查数据格式(日期、数字)
- 删除空行和合并单元格
- 备份原数据
7、表数据截断和清空
7.1 截断(TRUNCATE)
特点:
- 重置自增ID
- 速度快(DDL操作)
- 不可回滚
步骤:
-
选中 表 → 右键 →「工具」→ 「截断」
-
确认操作

截断
SQL语句:
TRUNCATE TABLE t_user;7.2 删除表数据(DELETE)
特点:
- 不重置自增ID
- 速度较慢(DML操作)
- 可回滚
- 可加WHERE条件
步骤:
-
打开表数据
-
全选数据(Ctrl+A)
-
按 Delete 键
-
保存操作

清空表
SQL语句:
-- 删除所有数据DELETE FROM t_user;
-- 删除指定条件数据DELETE FROM t_user WHERE create_time < '2024-01-01';⚠️ 新人踩坑点:
- 混淆清空和删除,自增ID行为不同
- 操作前未备份,数据无法恢复
- DELETE无WHERE条件,清空整表
💡 安全建议:
- 重要数据先备份(导出SQL或Excel)
- 确认使用清空还是删除
- DELETE前务必检查WHERE条件
- 生产环境操作要谨慎
8、将表里面部分记录复制成sql语句
当你需要把表里新增的记录或者表记录的更改以sql语句导出来的时候。
步骤:
-
选中你要操作的记录 → 「右键」
-
根据你的需求选择 Insert语句 或者 Update语句

将表里面部分记录复制成sql语句
推荐命名规范
| 类型 | 规范 | 示例 |
|---|---|---|
| 表名 | t_模块名 | t_user、t_order |
| 字段名 | 小写+下划线 | user_name、create_time |
| 索引名 | idx_字段名 | idx_user_name |
| 主键 | id(自增) | id |
| 外键 | fk_关联表_字段 | fk_order_user_id |
支持与分享
如果这篇文章对你有帮助,欢迎分享给更多人或打赏支持!














