Solved

MySQL: Upload a JSON file into a table programmatically

Posted on 2016-08-08
8
24 Views
Last Modified: 2016-09-26
Hi
Does anymore know about a technique, a tool or set of commands to load a JSON file into a mysql table. Please, note fields will match with the JSON structure.
I know I can do it in MySQL Workbench, but I want to automate the process.

Thanks
0
Comment
Question by:Omer-Pitou
  • 4
  • 3
8 Comments
 
LVL 7

Assisted Solution

by:James Bilous
James Bilous earned 500 total points
ID: 41747563
This is a common task called data "marshalling". Essentially, what you'll want to do is write a java program that takes the JSON from in memory, connects to a database using JDBC (or some other database connection API), and loops through your JSON while inserting the data as rows in your database. Here is a good article on the process:

http://www.codeproject.com/Articles/1087995/Inserting-JSON-Text-into-SQL-Server-Table
0
 

Author Comment

by:Omer-Pitou
ID: 41747774
Thanks James,
What I am avoiding is to loop through these rows.
I think I will convert it to CSV, and load it with MySQL LOAD INFILE
0
 
LVL 7

Expert Comment

by:James Bilous
ID: 41747794
In that case there are online converters that will get you from json to csv that you can fin pretty readily via Google search.
0
Free Gift Card with Acronis Backup Purchase!

Backup any data in any location: local and remote systems, physical and virtual servers, private and public clouds, Macs and PCs, tablets and mobile devices, & more! For limited time only, buy any Acronis backup products and get a FREE Amazon/Best Buy gift card worth up to $200!

 

Author Comment

by:Omer-Pitou
ID: 41747800
Do you know any 3rd party library that I can embed into the app
0
 
LVL 7

Expert Comment

by:James Bilous
ID: 41747818
What exactly are you doing? You didn't really give a lot of context to your problem. You're making an android app that receives JSON and you want to put it into a database by converting it to CSV first? This seems to be the most round about and difficult way to do this. Why not just use all the tools and APIs available from the Android Developmen toolkit that were made for this exact purpose?
0
 

Author Comment

by:Omer-Pitou
ID: 41747831
I am not developing an Android app.
It is a SE app which will in a local network.
Some of the data need to be transferred to a remote database (web server) to serve the web dashboard application. This will be done through a web service.
0
 
LVL 7

Accepted Solution

by:
James Bilous earned 500 total points
ID: 41747848
I would use the org.json.CDL library:


https://github.com/stleary/JSON-java
0

Featured Post

Top 6 Sources for Identifying Threat Actor TTPs

Understanding your enemy is essential. These six sources will help you identify the most popular threat actor tactics, techniques, and procedures (TTPs).

Join & Write a Comment

Suggested Solutions

As a database administrator, you may need to audit your table(s) to determine whether the data types are optimal for your real-world data needs.  This Article is intended to be a resource for such a task. Preface The other day, I was involved …
Are you developing a Java application and want to create Excel Spreadsheets? You have come to the right place, this article will describe how you can create Excel Spreadsheets from a Java Application. For the purposes of this article, I will be u…
Viewers learn about the scanner class in this video and are introduced to receiving user input for their programs. Additionally, objects, conditional statements, and loops are used to help reinforce the concepts. Introduce Scanner class: Importing…
Viewers learn how to read error messages and identify possible mistakes that could cause hours of frustration. Coding is as much about debugging your code as it is about writing it. Define Error Message: Line Numbers: Type of Error: Break Down…

743 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

8 Experts available now in Live!

Get 1:1 Help Now