Navicat的使用

2222 字
11 分钟
Navicat的使用

一、Navicat是什么?#

Navicat 是一款数据库管理可视化工具,不是数据库本身

打个比方:

  • Navicat 就像是 Xshell,是连接数据库的工具
  • MySQL 就像是 Linux服务器,是真正的数据库服务

⚠️ 常见误区:很多新人误以为Navicat就是数据库,其实它只是一个管理工具,就像用Xshell连接Linux服务器一样。


二、Navicat的使用#

1、连接数据库、创建库#

1.1 连接数据库#

步骤:

  1. 点击左上角 「连接」 按钮

  2. 选择数据库类型(如 MySQL

    新建数据库连接-1
    新建数据库连接-1

  3. 填写连接信息:

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

  5. 点击 「确定」 完成连接

新建数据库连接
新建数据库连接

1.2 创建数据库#

方法一:右键菜单

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

新建数据库
新建数据库


2、导出SQL脚本和执行SQL脚本#

2.1 导出SQL脚本(备份表结构/数据)#

步骤:

  1. 选中要导出的 数据库
  2. 右键 → 选择 「转储SQL文件」
  3. 选择导出范围:
    • 结构和数据:导出表结构+所有数据(完整备份)
    • 仅结构:只导出表结构(不包含数据)
  4. 选择保存位置,点击 「保存」

转储sql
转储sql

💡 使用场景

  • 部署到新环境时导出表结构
  • 数据迁移时导出结构和数据
  • 备份重要数据

2.2 执行SQL脚本(导入)#

步骤:

  1. 选中目标 数据库

  2. 「右键」「运行SQL文件」

执行sql脚本-1
执行sql脚本-1

  1. 选择本地要执行的 .sql 文件

  2. 点击 「开始」 执行导入

  3. 等待导入完成,点击 「关闭」

执行sql脚本-2
执行sql脚本-2

⚠️ 注意

  • 导入前未选中目标数据库,导致找不到表
  • SQL文件编码不对,导致中文乱码
  • 大文件导入超时,需要调整 max_allowed_packet 参数

3、新建表、修改表#

3.1 新建表#

步骤:

  1. 选中 数据库「新建表」

新建表
新建表

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

新建表2
新建表2

新建表界面部分内容说明

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

    设置索引
    设置索引

  2. 点击 「保存」(或 Ctrl+S),填写表名。

    填写表名
    填写表名

常用字段类型参考:

-- 字符串
VARCHAR(255) -- 变长字符串
TEXT -- 长文本
-- 数字
INT -- 整数
BIGINT -- 长整数
DECIMAL(10,2) -- 金额字段
-- 日期时间
DATETIME -- 日期时间
TIMESTAMP -- 时间戳
DATE -- 日期
TIME -- 时间
-- 其他
TINYINT(1) -- 布尔值(0或1)

💡 命名规范

如果公司有命名规范就按照公司的命名规范。如果没有的话,就可以遵循如下一般规范即可。

  • 表名:t_模块名tb_模块名,如 t_usertb_order
  • 字段名:小写字母+下划线,如 user_namecreate_time

3.2 修改表结构#

修改表字段,如果是开发环境、测试环境一般都可以直接修改。如果是生产环境在修改的时候,一定要确认清楚你们可不可以直接修改。如果不可以的话,确认需要走什么样的流程,然后按照流程去走。

进入设计视图:

  • 选中表 → 右键「设计表」

常见修改操作:

操作步骤
添加字段在最后空白行直接输入
修改字段直接修改类型、长度等
删除字段选中字段 → 右键 → 「删除字段」
调整顺序选中字段 → 拖动到目标位置

⚠️ 注意

  • 修改已存在字段的类型可能导致数据丢失
  • 删除字段前请确认没有代码在使用
  • 修改表结构最好先备份

4、数据筛选和排序#

数据筛选和排序
数据筛选和排序

5、执行SQL语句#

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

执行sql语句
执行sql语句


⚠️ 新人踩坑点

  • 忘记加WHERE条件,导致更新/删除了全部数据!
  • 没有先SELECT查询,直接执行UPDATE/DELETE

💡 安全操作习惯

  1. 先SELECT查询确认数据
  2. 再UPDATE/DELETE修改
  3. 执行前务必检查WHERE条件

6、导出Excel、导入Excel#

6.1 导出Excel#

步骤:

  1. 选中你要导出的表 右键「导出向导」

    导出excel-1
    导出excel-1

  2. 选择导出格式:Excel 文件

    导出excel-2
    导出excel-2

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

    导出excel-3
    导出excel-3

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

    导出excel-4
    导出excel-4

  5. 点击 「下一步」→直到如下界面,点击 「开始」

导出excel-5
导出excel-5

其他导出格式:

  • Excel 文件(*.xlsx)
  • CSV 文件
  • JSON 文件
  • XML 文件

💡 使用场景

  • 导出数据给业务人员核对
  • 生成报表进行分析
  • 数据迁移

6.2 导入Excel#

步骤:

  1. 选中目标 右键「导入向导」

    导入excel-1
    导入excel-1

  2. 选择导入格式:Excel 文件

    导入excel-2
    导入excel-2

  3. 选择要导入的Excel文件

    导入excel-3
    导入excel-3

  4. 设置开始导入行、时间格式等信息

    导入excel-4
    导入excel-4

  5. 下一步到如下界面,配置字段映射(Excel列 ↔ 表字段)

    导入excel-5
    导入excel-5

  6. 设置导入模式

    导入excel-6
    导入excel-6

  7. 点击 「开始」 执行完成点击 「关闭」

    导入excel-7
    导入excel-7

⚠️ 新人踩坑点

  • Excel列顺序与表字段不匹配,导致数据错乱
  • Excel数据类型与字段类型不一致
  • Excel中有空行,导入失败

💡 导入前检查

  1. 确认Excel列名与表字段一致
  2. 检查数据格式(日期、数字等)
  3. 删除Excel中的空行

7、表数据截断和清空#

清空和截断表
清空和截断表

这两个操作都会清空表中所有数据,但有以下区别:

7.1 截断表(TRUNCATE)#

特点:

  • 重置自增ID
  • 速度快(不记录日志)
  • 不可回滚

步骤:

  1. 选中 右键「截断表」
  2. 确认操作

SQL语句:

TRUNCATE TABLE t_user;

7.2 清空表(DELETE)#

特点:

  • 不重置自增ID
  • 速度较慢(逐行删除,记录日志)
  • 可回滚
  • 可加WHERE条件删除部分数据

步骤:

  1. 选中 右键「清空表」
  2. 确认操作

SQL语句:

-- 删除所有数据
DELETE FROM t_user;
-- 删除指定条件数据
DELETE FROM t_user WHERE create_time < '2024-01-01';

⚠️ 新人踩坑点

  • 混淆清空和删除,导致自增ID不符合预期
  • 操作前未备份数据,数据无法恢复
  • 误操作清空了生产环境数据

💡 安全建议

  1. 重要数据先备份(导出SQL或Excel)
  2. 测试环境先验证
  3. 确认使用清空还是删除
  4. 清空前先SELECT确认数据量

8、将表里面部分记录复制成sql语句#

当你需要把表里新增的记录或者表记录的更改以sql语句导出来的时候。

步骤:

  1. 选中你要操作的记录 → 「右键」

  2. 根据你的需求选择 Insert语句 或者 Update语句

将表里面部分记录复制成sql语句
将表里面部分记录复制成sql语句

推荐命名规范

类型规范示例
表名t_模块名t_user、t_order
字段名小写+下划线user_name、create_time
索引名idx_字段名idx_user_name
主键id(自增)id
外键fk_关联表_字段fk_order_user_id

支持与分享

如果这篇文章对你有帮助,欢迎分享给更多人或打赏支持!

打赏
Navicat的使用
https://study-docs-158.pages.dev/posts/navicat的使用/
作者
我的学习小铺
发布于
2026-08-01
许可协议
CC BY-NC-SA 4.0
Profile Image of the Author
我的学习小铺
学而时习之
分类
标签
最新动态
站点统计
文章
44
分类
8
标签
9
总字数
126,514
运行时长
0
最后活动
0 天前
站点信息
构建平台
Local
博客版本
Firefly v6.15.3
文章许可
CC BY-NC-SA 4.0