←  See more Retool integrations
MySQL

MySQL

MySQL, meet Retool.

Retool makes it easy to build admin panels, dashboards, and utilities on top of your MySQL data.


Retool makes it easy to build tools like admin panels on top of your MySQL data.

Connecting Retool to MySQL takes just a few minutes, and lets you to build user interfaces quickly on top of your MySQL database. If you’ve got a table of users you need to approve, you can read your MySQL data into a Table and add a button that runs a SQL query and writes to your database to mark a user as approved.

For database writes, Retool gives you a point and click interface that makes it easy to perform the actions you want and hard to unintentionally do anything destructive. No need to worry about errant DROP DATABASE commands getting you paged late at night.

Check out the Retool + MySQL integration docs for more information.

MySQL

Supercharge your business operations with Retool and MySQL.


“I tell every technology leader I talk to that they should look at Retool as a way to reduce the burden of building admin UIs and democratize that kind of stuff across their company.”

Dean McRobie headshot
Dean McRobie
CTO
CommonBond

What is MySQL?

MySQL is an open-source relational database management system.

Read the Retool + MySQL integration docs for more information.


What operations are supported with MySQL on Retool?

  • View your data
    Visualize and search all of your database tables.

  • Insert or bulk insert record
    Insert a record or a list of records into an existing table.

  • Delete a record
    Delete an existing record from an existing table.

  • Update or create a new record
    Update an existing record in an existing table, or optionally create a new record if none is found.

  • Join with other datasources
    Easily join with other Retool connected datasources like GraphQL or the Twilio API.

  • Bulk update via a primary key
    Update a group of records using a column as a primary key.

  • Bulk upsert via a primary key
    Insert a list of rows (or update if existing rows are found) using a column as a primary key.


const newStage = Object.assign(job_stage_form.data, { Type: select1.value })
const new_job_stages = job_stages.value.concat(newStage)
job_stages.setValue(new_job_stages)
modal1.close()
select1.setValue(null)

const index = i; // variable which is the index of the button that triggered this
const newData = Array.from(job_stages.value);
newData.splice(i, 1)
job_stages.setValue(newData);

var rawData = getProductDetails.data
var prdStlCmpLst = new Array()
for (x in rawData)
if (rawData[x]["dim_date_shops_products.material_family"] == select19.value)
prdStlCmpLst.push(rawData[x]["dim_date_shops_products.taxonomy_style"])
return prdStlCmpLst
SELECT
nps.'Product Feedback',
nps.nps_count as NPS,
feedbacks.feedback_count as Feedback,
sfdc.sfdc_count as Salesforce,
sfdc.opp_dollars as Opportunity_Dollars
from
{{npsTableCounts.data}} as nps
join {{feedbackTableCounts.data}} as feedbacks on nps.'Product Feedback' = feedbacks.FeedbackID
join {{sfdcTableCounts.data}} as sfdc on sfdc.FeedbackID = nps.'Product Feedback'
where
(
{{ multiselect2.value.length === 0 }}
OR nps.'Product Feedback' = ANY({{ multiselect2.value }})
)
     

In Retool, you can join MySQL data with anything.

Retool connects to most databases and nearly anything with a REST or GraphQL API. Read in data from mongoDB, join it via SQL, record user approvals, and POST the result to Stripe to create invoices. Retool empowers you to work with all of your data sources inside of a single app.