Navicat的使用
一、Navicat是什么?
Navicat 是一款数据库管理可视化工具,不是数据库本身。
打个比方:
- Navicat 就像是 Xshell,是连接数据库的工具
- MySQL 就像是 Linux服务器,是真正的数据库服务
⚠️ 常见误区:很多新人误以为Navicat就是数据库,其实它只是一个管理工具,就像用Xshell连接Linux服务器一样。
二、Navicat的使用
1、连接数据库、创建库
1.1 连接数据库
步骤:
-
点击左上角 「连接」 按钮
-
选择数据库类型(如 MySQL)

新建数据库连接-1 -
填写连接信息:
- 连接名:自定义名称,方便识别,最好包含IP信息,方便通过连接名就可以知道对应的服务器的IP是什么(如:本地测试库-127.0.0.1、生产环境库-10.3.8.221)
- 主机:数据库服务器地址(
localhost或127.0.0.1表示本机,如果不是本机,就填写对应服务器的ip) - 端口:MySQL默认
3306 - 用户名:数据库用户名(如:
root) - 密码:数据库密码
-
点击 「测试连接」 验证配置是否正确
-
点击 「确定」 完成连接

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

2、导出SQL脚本和执行SQL脚本
2.1 导出SQL脚本(备份表结构/数据)
步骤:
- 选中要导出的 数据库 或 表
- 右键 → 选择 「转储SQL文件」
- 选择导出范围:
- 结构和数据:导出表结构+所有数据(完整备份)
- 仅结构:只导出表结构(不包含数据)
- 选择保存位置,点击 「保存」

💡 使用场景:
- 部署到新环境时导出表结构
- 数据迁移时导出结构和数据
- 备份重要数据
2.2 执行SQL脚本(导入)
步骤:
-
选中目标 数据库
-
「右键」 → 「运行SQL文件」

-
选择本地要执行的
.sql文件 -
点击 「开始」 执行导入
-
等待导入完成,点击 「关闭」

⚠️ 注意:
- 导入前未选中目标数据库,导致找不到表
- SQL文件编码不对,导致中文乱码
- 大文件导入超时,需要调整
max_allowed_packet参数
3、新建表、修改表
3.1 新建表
步骤:
- 选中 数据库 → 「新建表」

- 在如下界面,设置新建表的字段、索引、注释等。设置字段的时候不要有空格等特殊字符!

新建表界面部分内容说明
- 在设计视图中添加字段说明:
| 设置项 | 说明 | 常用选项 |
|---|---|---|
| 名 | 字段名称 | 一般规范就是使用小写字母+下划线,如 user_name |
| 类型 | 数据类型 | VARCHAR、INT、DATETIME、DECIMAL 等 |
| 长度 | 字段长度 | VARCHAR常用255、500、1000 |
| 小数点 | 小数位数 | DECIMAL类型使用,如 DECIMAL(10,2) |
| 不是null | 是否允许NULL | 主键字段通常不勾选,因为主键字段本身就不会为NULL |
| 主键 | 设为主键 | 通常设为自增ID |
| 自增 | 自动增长 | 主键ID勾选此项 |
| 默认值 | 默认值 | 如当前时间、0等 |
-
设置索引

设置索引 -
点击 「保存」(或 Ctrl+S),填写表名。

填写表名
常用字段类型参考:
-- 字符串VARCHAR(255) -- 变长字符串TEXT -- 长文本
-- 数字INT -- 整数BIGINT -- 长整数DECIMAL(10,2) -- 金额字段
-- 日期时间DATETIME -- 日期时间TIMESTAMP -- 时间戳DATE -- 日期TIME -- 时间
-- 其他TINYINT(1) -- 布尔值(0或1)💡 命名规范:
如果公司有命名规范就按照公司的命名规范。如果没有的话,就可以遵循如下一般规范即可。
- 表名:
t_模块名或tb_模块名,如t_user、tb_order- 字段名:小写字母+下划线,如
user_name、create_time
3.2 修改表结构
修改表字段,如果是开发环境、测试环境一般都可以直接修改。如果是生产环境在修改的时候,一定要确认清楚你们可不可以直接修改。如果不可以的话,确认需要走什么样的流程,然后按照流程去走。
进入设计视图:
- 选中表 → 右键 → 「设计表」
常见修改操作:
| 操作 | 步骤 |
|---|---|
| 添加字段 | 在最后空白行直接输入 |
| 修改字段 | 直接修改类型、长度等 |
| 删除字段 | 选中字段 → 右键 → 「删除字段」 |
| 调整顺序 | 选中字段 → 拖动到目标位置 |
⚠️ 注意:
- 修改已存在字段的类型可能导致数据丢失
- 删除字段前请确认没有代码在使用
- 修改表结构最好先备份!
4、数据筛选和排序

5、执行SQL语句
选中数据库 → 点击顶部 「查询」 → 「新建查询」,然后在如下界面写要执行的sql点击运行即可!

⚠️ 新人踩坑点:
- 忘记加WHERE条件,导致更新/删除了全部数据!
- 没有先SELECT查询,直接执行UPDATE/DELETE
💡 安全操作习惯:
- 先SELECT查询确认数据
- 再UPDATE/DELETE修改
- 执行前务必检查WHERE条件
6、导出Excel、导入Excel
6.1 导出Excel
步骤:
-
选中你要导出的表 右键 → 「导出向导」

导出excel-1 -
选择导出格式:Excel 文件

导出excel-2 -
选择要导出的表以及要导出的目录。默认就是第一步你选中的那个表,不需要重新设置要导出的表或者也不需要添加其他要导出的表,就直接下一步即可。

导出excel-3 -
选择要导出的字段(可全选或部分选择),点击 「下一步」

导出excel-4 -
点击 「下一步」→直到如下界面,点击 「开始」

其他导出格式:
- Excel 文件(*.xlsx)
- CSV 文件
- JSON 文件
- XML 文件
💡 使用场景:
- 导出数据给业务人员核对
- 生成报表进行分析
- 数据迁移
6.2 导入Excel
步骤:
-
选中目标 表 → 右键 → 「导入向导」

导入excel-1 -
选择导入格式:Excel 文件

导入excel-2 -
选择要导入的Excel文件

导入excel-3 -
设置开始导入行、时间格式等信息

导入excel-4 -
下一步到如下界面,配置字段映射(Excel列 ↔ 表字段)

导入excel-5 -
设置导入模式

导入excel-6 -
点击 「开始」 执行完成点击 「关闭」

导入excel-7
⚠️ 新人踩坑点:
- Excel列顺序与表字段不匹配,导致数据错乱
- Excel数据类型与字段类型不一致
- Excel中有空行,导入失败
💡 导入前检查:
- 确认Excel列名与表字段一致
- 检查数据格式(日期、数字等)
- 删除Excel中的空行
7、表数据截断和清空

这两个操作都会清空表中所有数据,但有以下区别:
7.1 截断表(TRUNCATE)
特点:
- 重置自增ID
- 速度快(不记录日志)
- 不可回滚
步骤:
- 选中 表 → 右键 → 「截断表」
- 确认操作
SQL语句:
TRUNCATE TABLE t_user;7.2 清空表(DELETE)
特点:
- 不重置自增ID
- 速度较慢(逐行删除,记录日志)
- 可回滚
- 可加WHERE条件删除部分数据
步骤:
- 选中 表 → 右键 → 「清空表」
- 确认操作
SQL语句:
-- 删除所有数据DELETE FROM t_user;
-- 删除指定条件数据DELETE FROM t_user WHERE create_time < '2024-01-01';⚠️ 新人踩坑点:
- 混淆清空和删除,导致自增ID不符合预期
- 操作前未备份数据,数据无法恢复
- 误操作清空了生产环境数据
💡 安全建议:
- 重要数据先备份(导出SQL或Excel)
- 测试环境先验证
- 确认使用清空还是删除
- 清空前先SELECT确认数据量
8、将表里面部分记录复制成sql语句
当你需要把表里新增的记录或者表记录的更改以sql语句导出来的时候。
步骤:
-
选中你要操作的记录 → 「右键」
-
根据你的需求选择 Insert语句 或者 Update语句

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














