Friday, July 12, 2024
HomeHow ToHow to Import Any Data Format to MySQL Using ChatGPT

How to Import Any Data Format to MySQL Using ChatGPT

ChatGPT, a powerful language model developed by OpenAI, has a wide range of applications across various realms, including database development. In this article, we will demonstrate how developers, DBAs, and data analysts can harness the capabilities of ChatGPT to enhance data import into databases like MySQL.

Today data migration across diverse systems and formats is a crucial aspect of the modern data-driven world. Data forms the backbone of our decision-making processes, and effective data transfer ensures seamless interoperability and improves the ability to make informed decisions.

Why not leverage the advancements in technology to simplify the process of database development? AI, a recent innovation that is gaining popularity, has tremendous potential. ChatGPT sets itself apart from other AI solutions due to its user-friendliness and its ability to provide succinct, to-the-point responses.

The magic of ChatGPT lies in its simplicity of use – all it requires is a well-crafted prompt. Once provided with a well-formulated request, it can produce the ready-to-use SQL code. This not only streamlines data handling but also reduces the complexities associated with data conversion and manipulation, bringing a new level of efficiency to data transfer processes.

In one of our previous articles, we explored the use of ChatGPT in retrieving data from MySQL databases. Now, we’re turning our focus towards demonstrating how to import data in a multitude of formats into a MySQL database, with a special emphasis on how ChatGPT can help with this.

download studio for mysql


Understanding data import in MySQL

MySQL, one of the most popular relational database management systems (RDBMS) in use today, supports diverse data types and offers robust capabilities for storing, retrieving, and manipulating data. One vital aspect of working with MySQL is the ability to import data from various sources and in various formats.

Data import in MySQL involves transferring data from external files or databases into a MySQL database. This process is essential for data migration, backups, and integrating MySQL with other systems. It’s also a common operation performed by developers, DBAs, and data analysts when setting up or updating databases.

Being a common operation, data import can pose several challenges, particularly when dealing with large volumes of data or complex data structures. Bringing in data from disparate sources or formats often necessitates meticulous data conversion and formatting to ensure compatibility. Upholding data integrity is another crucial aspect, as it’s vital to avoid problems such as data corruption, loss, or duplication during the import process. Furthermore, error handling is a common concern during data imports; processes may frequently run into errors stemming from issues within the data or the database schema, and pinpointing and rectifying these errors can be intricate and demanding.

Despite these challenges, the ability to import data is critical for any database management system. Innovations like ChatGPT can help address these challenges, simplifying the data import process and ensuring efficient and reliable data transfer.

How to use ChatGPT for data import in MySQL

In this article, we aim to demonstrate how you can employ ChatGPT for data import. We’ll take data from various formats and supply it to ChatGPT, requesting it to generate an INSERT statement to insert that data into a MySQL table. Following this, we’ll utilize dbForge Studio to execute the query and validate the outcome. We hope that this practical demonstration will offer insights into the operational capabilities of ChatGPT and its value in streamlining database development tasks.

ChatGPT use case: Convert CSV to MySQL

Suppose we have data in the CSV format and want to insert it into our MySQL database. Let us ask ChatGPT to write a query that will create a table and insert that data. We also ask the AI to create a primary key on one of the columns.

Asking ChatGPT to convert CSV to MySQL

The answer is not long in coming. ChatGPT has quickly generated the SQL query to create the actors table and insert the provided data.

ChatGPT: CSV to MySQL table

Below is the code that we’ve got:

  actor_id INT PRIMARY KEY,
  first_name VARCHAR(255),
  last_name VARCHAR(255),
  last_update TIMESTAMP

INSERT INTO actors (actor_id, first_name, last_name, last_update)
(1,"PENELOPE","GUINESS","2006-02-15 04:34:33"),
(2,"NICK","WAHLBERG","2006-02-15 04:34:33"),
(3,"ED","CHASE","2006-02-15 04:34:33"),
(4,"JENNIFER","DAVIS","2006-02-15 04:34:33"),
(5,"JOHNNY","LOLLOBRIGIDA","2006-02-15 04:34:33"),
(6,"BETTE","NICHOLSON","2006-02-15 04:34:33"),
(7,"GRACE","MOSTEL","2006-02-15 04:34:33"),
(8,"MATTHEW","JOHANSSON","2006-02-15 04:34:33"),
(9,"JOE","SWANK","2006-02-15 04:34:33"),
(10,"CHRISTIAN","GABLE","2006-02-15 04:34:33"),
(11,"ZERO","CAGE","2006-02-15 04:34:33"),
(12,"KARL","BERRY","2006-02-15 04:34:33"),
(13,"UMA","WOOD","2006-02-15 04:34:33"),
(14,"VIVIEN","BERGEN","2006-02-15 04:34:33"),
(15,"CUBA","OLIVIER","2006-02-15 04:34:33"),
(16,"FRED","COSTNER","2006-02-15 04:34:33"),
(17,"HELEN","VOIGHT","2006-02-15 04:34:33"),
(18,"DAN","TORN","2006-02-15 04:34:33"),
(19,"BOB","FAWCETT","2006-02-15 04:34:33"),
(20,"LUCILLE","TRACY","2006-02-15 04:34:33");

Now it’s time to execute the SQL query generated by AI in dbForge Studio for MySQL to validate it and ensure that the data has been successfully inserted into the database. We want to make sure that the table has been created correctly and that the data is present as intended.

Load data from CSV to MySQL using dbForge Studio for MySQL

As you can see, our CSV data has appeared in the MySQL database.

ChatGPT use case: Convert Excel to MySQL

Let’s proceed to the next example. This time, we will seek ChatGPT’s assistance in importing Excel data. Suppose we have an Excel file containing data that we want to transfer to our MySQL database. Let’s ask AI to generate a corresponding query for us.

Data to be converted from Excel to MySQL

All we need is to formulate a clear and concise request.

Ask ChatGPT to help import data from Excel to MySQL

Here is the answer we’ve got.

Query to import data from Excel to MySQL

Here is the code generated by AI.

-- Create the table
  film_id INT PRIMARY KEY,
  title VARCHAR(255),
  description TEXT,
  release_year INT,
  language_id INT,
  original_language_id INT,
  rental_duration INT,
  rental_rate DECIMAL(4, 2),
  length INT,
  replacement_cost DECIMAL(5, 2),
  rating VARCHAR(5),
  special_features VARCHAR(255),
  last_update DATETIME

-- Insert the data
INSERT INTO films (film_id, title, description, release_year, language_id, original_language_id, rental_duration, rental_rate, length, replacement_cost, rating, special_features, last_update)
  (1, 'ACADEMY DINOSAUR', 'A Epic Drama of a Feminist And a Mad Scientist who must Battle a Teacher in The Canadian Rockies', 2006, 1, NULL, 6, 0.99, 86, 20.99, 'PG', 'Deleted Scenes,Behind the Scenes', '2006-02-15 05:03:42'),
  (2, 'ACE GOLDFINGER', 'A Astounding Epistle of a Database Administrator And a Explorer who must Find a Car in Ancient China', 2006, 1, NULL, 3, 4.99, 48, 12.99, 'G', 'Trailers,Deleted Scenes', '2006-02-15 05:03:42'),
  (3, 'ADAPTATION HOLES', 'A Astounding Reflection of a Lumberjack And a Car who must Sink a Lumberjack in A Baloon Factory', 2006, 1, NULL, 7, 2.99, 50, 18.99, 'NC-17', 'Trailers,Deleted Scenes', '2006-02-15 05:03:42'),
  (4, 'AFFAIR PREJUDICE', 'A Fanciful Documentary of a Frisbee And a Lumberjack who must Chase a Monkey in A Shark Tank', 2006, 1, NULL, 5, 2.99, 117, 26.99, 'G', 'Commentaries,Behind the Scenes', '2006-02-15 05:03:42'),
  (5, 'AFRICAN EGG', 'A Fast-Paced Documentary of a Pastry Chef And a Dentist who must Pursue a Forensic Psychologist in The Gulf of Mexico', 2006, 1, NULL, 6, 2.99, 130, 22.99, 'G', 'Deleted Scenes', '2006-02-15 05:03:42'),
  (6, 'AGENT TRUMAN', 'A Intrepid Panorama of a Robot And a Boy who must Escape a Sumo Wrestler in Ancient China', 2006, 1, NULL, 3, 2.99, 169, 17.99, 'PG', 'Deleted Scenes', '2006-02-15 05:03:42'),
  (7, 'AIRPLANE SIERRA', 'A Touching Saga of a Hunter And a Butler who must Discover a Butler in A Jet Boat', 2006, 1, NULL, 6, 4.99, 62, 28.99, 'PG-13', 'Trailers,Deleted Scenes', '2006-02-15 05:03:42'),
  (8, 'AIRPORT POLLOCK', 'A Epic Tale of a Moose And a Girl who must Confront a Monkey in Ancient India', 2006, 1, NULL, 6, 4.99, 54, 15.99, 'R', 'Trailers', '2006-02-15 05:03:42'),
  (9, 'ALABAMA DEVIL', 'A Thoughtful Panorama of a Database Administrator And a Mad Scientist who must Outgun a Mad Scientist in A Jet Boat', 2006, 1, NULL, 3, 2.99, 114, 21.99, 'PG-13', 'Trailers,Deleted Scenes', '2006-02-15 05:03:42'),
  (10, 'ALADDIN CALENDAR', 'A Action-Packed Tale of a Man And a Lumberjack who must Reach a Feminist in Ancient China', 2006, 1, NULL, 6, 4.99, 63, 24.99, 'NC-17', 'Trailers,Deleted Scenes', '2006-02-15 05:03:42');

Let’s now open dbForge Studio for MySQL to execute and verify the provided code.

Run query to import data from Excel to MySQL

As you can see, the query has been successful. Now, let’s retrieve data from the newly created table to confirm that the data import has been carried out as expected.

Successful conversion of Excel data to MySQL

ChatGPT use case: Convert Google Sheets to MySQL

Let’s proceed with another test to explore ChatGPT’s abilities in generating queries for importing data. This time, we’ll try to convert the data from Google Sheets into a format compatible with MySQL.

Spreadsheet to be converted to MySQL

We’ve requested assistance from ChatGPT to generate a query to create a table in MySQL. The language table is supposed to consist of the following columns: language_id, name, and last_update. We also ask the AI to add the INSERT statement to insert the data that we have copied from the Google Sheets. And here is the answer we’ve got.

ChatGPT: query to convert Google Sheets to MySQL

We have obtained the following code and now need to validate it to ensure its accuracy and functionality.

CREATE TABLE language (
  language_id INT PRIMARY KEY,
  name VARCHAR(50),
  last_update DATETIME

INSERT INTO language (language_id, name, last_update)
(1, 'English', '2006-02-15 05:02:19'),
(2, 'Italian', '2006-02-15 05:02:19'),
(3, 'Japanese', '2006-02-15 05:02:19'),
(4, 'Mandarin', '2006-02-15 05:02:19'),
(5, 'French', '2006-02-15 05:02:19'),
(6, 'German', '2006-02-15 05:02:19');

The query has been executed without any errors, and as a result, the table and corresponding data have been successfully created and added to the database.

Import Google spreadsheet to MySQL with dbForge Studio for MySQL

ChatGPT use case: Convert JSON to MySQL

Let’s proceed with testing ChatGPT’s capabilities. Will ChatGPT be able to generate a query for adding data in JSON format to a MySQL database? Let’s find out. That is the data we want to insert.

Convert JSON to MySQL: source data

We make a request to ChatGPT, asking it to generate a query for creating a table named staff and an INSERT statement to add the data to that table. Here is the answer we’ve got.

Asking ChatGPT to help convert JSON to MySQL

Okay, let us validate the AI-generated syntax with the help of dbForge Studio for MySQL.

  staff_id INT,
  first_name VARCHAR(255),
  last_name VARCHAR(255),
  address_id INT,
  picture VARCHAR(255),
  email VARCHAR(255),
  store_id INT,
  active INT,
  username VARCHAR(255),
  password VARCHAR(255),
  last_update DATETIME

INSERT INTO staff (staff_id, first_name, last_name, address_id, picture, email, store_id, active, username, password, last_update)
  (1, 'Tom', 'Mayers', 3, null, '[email protected]', 2, 1, 'Tommy', null, '2006-02-15 03:57:16'),
  (2, 'Jon', 'Stephens', 4, null, '[email protected]', 2, 1, 'Jon', null, '2006-02-15 03:57:16');
Successful import of JSON to MySQL database

ChatGPT use case: Convert XML to MySQL

Okay, it’s the turn of the XML format. You’re already familiar with the procedure, we’ll simply copy the XML data that we want to add to a MySQL database and request ChatGPT to generate a query for creating a table and inserting the data. Let’s get started and see what ChatGPT comes up with!

Here is the data we want to move to MySQL.

XML to MySQL: source data

So, we ask ChatGPT to generate a query that will create the address table and insert that data into it. Here is what it has provided us with.

Request to ChatGPT to create a query to convert XML to MySQL

Looks good. The next step is to take the provided code and validate it using dbForge Studio for MySQL.

CREATE TABLE address (
  address_id INT,
  address VARCHAR(255),
  address2 VARCHAR(255),
  district VARCHAR(255),
  city_id INT,
  postal_code VARCHAR(255),
  phone VARCHAR(255),
  location POINT,
  last_update DATETIME

INSERT INTO address (address_id, address, address2, district, city_id, postal_code, phone, location, last_update)
  (1, '47 MySakila Drive', null, 'Alberta', 300, '', '', ST_GeomFromText('POINT(-112.8185647 49.6999986)'), '2014-09-25 22:30:27'),
  (2, '28 MySQL Boulevard', null, 'QLD', 576, '', '', ST_GeomFromText('POINT(153.1408538 -27.6333361)'), '2014-09-25 22:30:09'),
  (3, '23 Workhaven Lane', null, 'Alberta', 300, '', '14033335568', ST_GeomFromText('POINT(-112.8185673 49.6999951)'), '2014-09-25 22:30:27'),
  (4, '1411 Lillydale Drive', null, 'QLD', 576, '', '6172235589', ST_GeomFromText('POINT(153.1913094 -27.6333373)'), '2014-09-25 22:30:09'),
  (5, '1913 Hanoi Way', '', 'Nagasaki', 463, '35200', '28303384290', ST_GeomFromText('POINT(129.7227851 33.1591726)'), '2014-09-25 22:31:53'),
  (6, '1121 Loja Avenue', '', 'California', 449, '17886', '838635286649', ST_GeomFromText('POINT(-117.2897714 34.1083428)'), '2014-09-25 22:34:01'),
  (7, '692 Joliet Street', '', 'Attika', 38, '83579', '448477190408', ST_GeomFromText('POINT(23.7162294 37.9794508)'), '2014-09-25 22:31:07'),
  (8, '1566 Inegl Manor', '', 'Mandalay', 349, '53561', '705814003527', ST_GeomFromText('POINT(95.3884368 21.4600272)'), '2014-09-25 22:32:18'),
  (9, '53 Idfu Parkway', '', 'Nantou', 361, '42399', '10655648674', ST_GeomFromText('POINT(120.6638785 23.9156685)'), '2014-09-25 22:33:16'),
  (10, '1795 Santiago de Compostela Way', '', 'Texas', 295, '18743', '860452626434', ST_GeomFromText('POINT(-99.5075448 27.5064117)'), '2014-09-25 22:33:55');

The query has been executed successfully. And the table with the corresponding data has appeared in the database.

Successful import of XML to MySQL

ChatGPT use case: Convert HTML table to MySQL

It’s now the time for the HTML format now. Suppose we have HTML data like below and want to migrate it to our MySQL database.

Convert HTML to MySQL: source data

Okay, what do we do? We simply copy the data we wish to insert and seek assistance from ChatGPT to accomplish the task.

Request to ChatGPT to help convert HTML table to MySQL

Next, we take the query the AI has provided us with and go to dbForge Studio for MySQL to run it.

-- Create the table
  city_id INT PRIMARY KEY,
  city VARCHAR(255),
  country_id INT,
  last_update DATETIME

-- Insert the data
INSERT INTO cities (city_id, city, country_id, last_update)
  (1, 'A Corua (La Corua)', 87, '2006-02-15 04:45:25'),
  (2, 'Abha', 82, '2006-02-15 04:45:25'),
  (3, 'Abu Dhabi', 101, '2006-02-15 04:45:25'),
  (4, 'Acua', 60, '2006-02-15 04:45:25'),
  (5, 'Adana', 97, '2006-02-15 04:45:25'),
  (6, 'Addis Abeba', 31, '2006-02-15 04:45:25'),
  (7, 'Aden', 107, '2006-02-15 04:45:25'),
  (8, 'Adoni', 44, '2006-02-15 04:45:25'),
  (9, 'Ahmadnagar', 44, '2006-02-15 04:45:25'),
  (10, 'Akishima', 50, '2006-02-15 04:45:25');

The query has been successful. The new table, containing the provided data, has appeared in our MySQL database. Great job, ChatGPT!

Import HTML to MySQL: successful result

ChatGPT use case: Convert PDF to MySQL

And last but not least – the PDF format. The objective is to transfer the data from a PDF file to a MySQL database, following the same process as before.

Convert PDF to MySQL: source data

Let us send a request to ChatGPT. We simply copy the data from our pdf file – and the rest you are already familiar with.

ChatGPT's query to import PDF to MySQL

It’s time to validate the query in dbForge Studio for MySQL.

-- Create the table
CREATE TABLE countries (
  country_id INT PRIMARY KEY,
  country VARCHAR(255),
  last_update DATETIME

-- Insert the data
INSERT INTO countries (country_id, country, last_update)
  (1, 'Afghanistan', '2006-02-15 04:44:00'),
  (2, 'Algeria', '2006-02-15 04:44:00'),
  (3, 'American Samoa', '2006-02-15 04:44:00'),
  (4, 'Angola', '2006-02-15 04:44:00'),
  (5, 'Anguilla', '2006-02-15 04:44:00'),
  (6, 'Argentina', '2006-02-15 04:44:00'),
  (7, 'Armenia', '2006-02-15 04:44:00'),
  (8, 'Australia', '2006-02-15 04:44:00'),
  (9, 'Austria', '2006-02-15 04:44:00'),
  (10, 'Azerbaijan', '2006-02-15 04:44:00');

And it runs successfully. Let’s execute a simple SELECT to make sure that that data has been successfully migrated too.

Successful import of PDF to MySQL

Convert any data to CSV and import to MySQL using a GUI tool

Now, let us introduce the tool we have been using to illustrate all of these cases. dbForge Studio for MySQL is a comprehensive IDE that provides extensive support to database developers, DBAs, and data analysts for a wide range of database tasks. One of its standout features is its robust data import functionality, enabling you to seamlessly import data from various file formats into MySQL.

dbForge Studio for MySQL: Convert any data to CSV and import to MySQL

With the powerful combination of ChatGPT and dbForge Studio, you can efficiently convert data from almost any format to MySQL. Simply request assistance from ChatGPT to convert your data to CSV format, and then leverage dbForge Studio to effortlessly import the converted data into your MySQL database.

ChatGPT: convert data to CSV

All you need then is simply copy and paste the data into a text or Excel file, and then save it in the CSV format. The Import feature of dbForge Studio will handle the remaining tasks.


ChatGPT, combined with the capabilities of dbForge Studio for MySQL, forms a powerful tandem when it comes to importing data from various formats into MySQL. With ChatGPT’s ability to provide guidance and support in converting data and writing SQL queries, and dbForge Studio’s robust import functionality, the process becomes seamless and efficient. Whether the data is in HTML, PDF, or any other format, leveraging these tools allows for smooth data migration into MySQL databases.

dbForge Studio for MySQL offers a range of powerful features, among others including potent query builder and query profiler functionality as well as powerful migration tools, making it a comprehensive tool for streamlined database development, administration, and analysis in MySQL.

Experience the power of dbForge Studio for MySQL today! Download now and enjoy a free 30-day trial to test-drive its extensive features and unleash the full potential of your MySQL environment.

download studio for mysql
Helena Alexander
Helena Alexander
dbForge Team