Skip to content

MySQL#

Use the MySQL node to automate work in MySQL, and integrate MySQL with other applications. n8n has built-in support for a wide range of MySQL features, including executing an SQL query, as well as inserting, and updating rows in a database.

On this page, you'll find a list of operations the MySQL node supports and links to more resources.

Credentials

Refer to MySQL credentials for guidance on setting up authentication.

Operations#

  • Delete
  • Execute SQL
  • Insert
  • Insert or Update
  • Select
  • Update

Templates and examples#

Import CSV into MySQL

by Eduard

View template details
Import data from Google Sheets into MySQL

by Lorena

View template details
Import data from MySQL into Google Sheets

by Lorena

View template details
Browse MySQL integration templates, or search all templates

Refer to MySQL's Connectors and APIs documentation for more information about the service.

Refer to MySQL's SELECT statement documentation for more information on writing SQL queries.

Use query parameters#

When creating a query to run on a MySQL database, you can use the Query Parameters field in the Options section to load data into the query. n8n sanitizes data in query parameters, which prevents SQL injection.

For example, you want to find a person by their email address. Given the following input data:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
[
    {
        "email": "alex@example.com",
        "name": "Alex",
        "age": 21 
    },
    {
        "email": "jamie@example.com",
        "name": "Jamie",
        "age": 33 
    }
]

You can write a query like:

1
SELECT * FROM $1:name WHERE email = $2;

Then in Query Parameters, provide the field values to use. You can provide fixed values or expressions. For this example, use expressions so the node can pull the email address from each input item in turn:

1
2
// users is an example table name
users, {{ $json.email }}