锋盈数科-知识库 Logo
首页
软件开发
计算机基础
Hello Halo
新手必读
关于本知识库
登录 →
锋盈数科-知识库 Logo
首页 软件开发 计算机基础 Hello Halo 新手必读 关于本知识库
登录
  1. 首页
  2. 软件开发
  3. Navicat导入json文件(json文件数据导入到MySQL表中)

Navicat导入json文件(json文件数据导入到MySQL表中)

0
  • 软件开发
  • 发布于 2024-08-19
  • 0 次阅读
黄健
黄健

天行健,君子以自强不息;地势坤,君子以厚德载物。


每个人都有惰性,但不断学习是好好生活的根本,共勉!


文章均为学习整理笔记,分享记录为主,如有错误请指正,共同学习进步。


文章目录

  • 一、介绍
  • 二、准备工作
    • 1. 工具
    • 2. 建表
    • 3. Json文件
  • 三、JSON文件数据导入MySQL表
    • 1. 导入文件入口
    • 2. 文件类型选择
    • 3. 添加文件
    • 4. 分割符选择
    • 5. 附加选项定义
    • 6. 目标表的选择
    • 7. 确认字段
    • 8. 导入模式选择
    • 9. 开始导入
    • 10. 导入结果
    • 11. 查看表数据
  • 四、注意事项
    • 1. 数据字段的数量
    • 2. 数据字段值的类型
    • 3. 数据字段值的取值范围


急需使用可直接跳过一、介绍、二、准备工作,直接看第三章三、导入json文件数据到MySQL表

一、介绍

如何使用json文件将数据导入到MySQL数据库中的表里?

Excel表格等文件的数据通过java或者python等语言读取后生成一个json文件,然后想要将文件中的数据写入到MySQL表中

二、准备工作

1. 工具

需要使用含有导入功能的MySQL数据库可视化工具,功能强大的Navicat具有导入多种类型的数据文件到表中的功能。其他的可视化工具也有,但目前试了两个好像都不是很好用。如果有好用的工具可以评论区分享一下。

推荐使用Navicat,虽然付费但功能强大,当然也可以参考文章进行免费试用
Navicat下载安装使用

navicat工具视图

2. 建表

创建一个表,用于json文件导入

MySQL数据库中需要先创建一个满足json文件中字段的表

表名:tb_json_data_import
建表语句

CREATE TABLE `tb_json_data_import` (
  `id` INTEGER UNSIGNED AUTO_INCREMENT,
  `uuid` VARCHAR(300) UNIQUE ,
  `user_name` VARCHAR(300),
  `age` INTEGER,
  `addr` VARCHAR(300),
  PRIMARY KEY (`id`)
);

如何建表
查询-->新建查询-->输入建表语句-->运行


运行后刷新左侧数据库,新建的表出现,双击点开,表如下

3. Json文件

准备一个json文件
文件中的字段(键)的名称和字段的数量要与MySQL表的字段保持一致
字段键对应值的数据类型也需要与MySQL表中的字段值的类型保持一致

以下为根据上述生成的表字段造的json文件数据

json文件名:navicat_json_data.json

[
    {
   
        "uuid":"202406061417",
        "user_name":"libai",
        "age":20,
        "addr":"shanghai"
    },
    {
   
        "uuid":"202406061418",
        "user_name":"baijuyi",
        "age":21,
        "addr":"beijing"
    },
    {
   
        "uuid":"202406061419",
        "user_name":"dufu",
        "age":22,
        "addr":"guangzhou"
    },
    {
   
        "uuid":"202406061420",
        "user_name":"wangwei",
        "age":23,
        "addr":"shenzhen"
    },
    {
   
        "uuid":"202406061421",
        "user_name":"menghaoran",
        "age":24,
        "addr":"xianggang"
    },
    {
   
        "uuid":"202406061422",
        "user_name":"quyuan",
        "age":25,
        "addr":"aomen"
    },
    {
   
        "uuid":"202406061423",
        "user_name":"liyu",
        "age":26,
        "addr":"chongqing"
    },
    {
   
        "uuid":"202406061424",
        "user_name":"weiyingwu",
        "age":27,
        "addr":"tianjing"
    },
    {
   
        "uuid":"202406061425",
        "user_name":"liqingzhao",
        "age":28,
        "addr":"nanchang"
    },
    {
   
        "uuid":"202406061426",
        "user_name":"wangchangling",
        "age":29,
        "addr":"hangzhou"
    }
]

三、JSON文件数据导入MySQL表

1. 导入文件入口

可从两个位置导入文件
第一种
打开表后,在表的数据视图上方有导入的按钮,点击即可进入导入文件的界面

第二种
在数据库的表列表中选中要导入文件的表名,右键选择导入向导...,即可进入导入文件的界面

2. 文件类型选择

进入导入界面后,可以选择不同类型的文件进行导入,这里我们选择JSON文件(*.json)
然后下一步

3. 添加文件

这里我们点击添加文件
然后选择我们前面创建的json文件
编码格式默认无需更改
然后下一步

注意:添加文件可以添加多个文件,也可以点击文件后面的三个点...进行重选文件覆盖原文件

4. 分割符选择

选择一个表的字段进行分隔,正常应该是可以不选的。
但我这里不选点下一步会报错,提示我必须选一个,我这里有一个(Root)选项,我选的就是这个
然后下一步

注意:如果你没有Root选项的话,可以选择任意一个字段进行分隔,试了一下好像都能成功插入数据

5. 附加选项定义

这里可以定义一些额外的选项,如日期格式、日期分割符等,我们默认即可,无需修改
下一步

6. 目标表的选择

这里可以选择或者修改默认的目标表,我们使用默认的即可,就是我们创建的那个表
下一步

注意:如果你想使用别的表进行导入,这里也可以选择,在目标表的后面有下拉框

7. 确认字段

查看字段是否一致,然后下一步

8. 导入模式选择

根据需要选择导入模式,默认追加:添加记录到目标表,我们就是用这个就可以了,会将记录添加到表中
下一步

9. 开始导入

准备就绪后,点击开始,即可开始导入数据到表

10. 导入结果

导入完成后可以看到输出的结果,0错误表示成功导入,如下

已处理10条
已添加10条
未出现报错内容
表示导入数据成功,然后关闭即可

11. 查看表数据

导入成功后刷新表数据,查看插入的数据结果,如下

四、注意事项

1. 数据字段的数量

JSON文件中的数据,其每条记录中的字段数量需要和表中的字段数量保持一致

2. 数据字段值的类型

JSON文件中的数据,其每条记录中的字段对应的值的类型,应当与表中字段定义的类型保持一致

3. 数据字段值的取值范围

JSON文件中的数据,其每条记录中的字段对应的值的取值范围,应当满足表中字段定义时的范围


感谢阅读,祝君暴富!

原文链接: https://hanshan.blog.csdn.net//article/details/139498197

标签: #Navicat 1
相关文章

万字:支付“核心系统”详解 2024-11-02 15:33

专栏作者:隐墨星辰 \| 主编:陈天宇宙 这篇文章也尝试化繁为简,探寻支付系统的本质,讲清楚在线支付系统最核心的一些概念和设计理念。 虽然支付行业已经过了风头最劲的时光,但跨境支付仍然在蓬勃发展,每年依然有很多新人进入这个行业,这篇文章尝试为这些刚入行的新人提供一点帮助。 文章只介绍一些支付行业十几

资深支付架构师视角:实战从问题定义到代码落地的完整套路 2024-11-02 15:33

前言 今天从一个实际案例入手,介绍站在架构师的角度,如何识别并定义问题,提炼需求,技术方案选型,再到详细设计,最后利用AI的能力协助写出核心的代码,验证与调优。 解决问题存在一定的模式,也可以称之为框架,总结出自己的思考和解题框架,以后再碰到同类型的问题就可以如庖丁解牛一样容易。 很多年前,我写代码

Spring 实现 3 种异步接口 2024-10-18 09:07

大家好,我是苏三~ 如何处理比较耗时的接口? 这题我熟,直接上异步接口,使用 Callable、WebAsyncTask 和 DeferredResult、CompletableFuture等均可实现。 但这些方法有局限性,处理结果仅返回单个值。在某些场景下,如果需要接口异步处理的同时,还持续不断地

重学SpringBoot3-集成Redis(五)之布隆过滤器 2024-10-08 11:24

更多SpringBoot3内容请关注我的专栏:《SpringBoot3》 期待您的点赞👍收藏⭐评论✍ 重学SpringBoot3-集成Redis(五)之布隆过滤器 1. 什么是布隆过滤器? * 基本概念 适用场景 2. 使用 Redis 实现布隆过滤器 * 项目依赖 Redis 配置

设计模式第16讲——迭代器模式(Iterator) 2024-10-08 11:24

一、什么是迭代器模式 迭代器模式是一种行为型设计模式,它提供了一种统一的方式来访问集合对象中的元素,而不是暴露集合内部的表示方式。简单地说,就是将遍历集合的责任封装到一个单独的对象中,我们可以按照特定的方式访问集合中的元素。 二、角色组成 抽象迭代器(Iterator):定义了遍历聚合对象所需的方法

vue2路由和vue3路由区别及原理 2024-10-08 11:24

一、Vue2 与 Vue3 路由的区别 1. 创建路由实例方式的不同 Vue 2 中,通过 Vue.use() 注册路由插件,并通过 new VueRouter() 来创建路由实例。 import Vue from 'vue';import VueRouter from 'vue-router';i

目录

IT 外包服务商

  • 意见投递
  • zyf6619

软件开发应用

主菜单

  • 首页
  • 软件开发
  • 计算机基础
  • Hello Halo
  • 新手必读
  • 关于本知识库
Copyright © 2024 your company All Rights Reserved. Powered by Halo.