Main Content


Execute SQL statement using MySQL native interface database connection

Since R2020b



execute(conn,sqlquery) executes an SQL query that contains a non-SELECT SQL statement by using the relational database connection.


collapse all

Using a relational database connection, create and execute a non-SELECT SQL statement that deletes a database table. The MySQLNative data source configures a database connection to a MySQL® database.

This example uses a MySQL database version 5.7.22 database and the MySQL Connector/C++ driver version 8.0.15.

Connect to the database using the data source name, user name, and password.

datasource = "MySQLNative";
username = "root";
password = "matlab";

conn = mysql(datasource,username,password);

Load patient information into the MATLAB® workspace.

patients = readtable("patients.xls");

Create the patients database table using the patient information.

tablename = "patients";

Import the data from the patients database table.

data = sqlread(conn,tablename);

Delete the patients database table using the execute function.

sqlquery = strcat("DROP TABLE ",tablename);

Ensure that the table no longer exists.

data = sqlfind(conn,tablename)
data =

  0×5 empty table

Close the database connection.


Input Arguments

collapse all

MySQL native interface database connection, specified as a connection object.

SQL statement, specified as a character vector or string scalar. The SQL statement can be any valid non-SELECT SQL statement.

The SQL statement can be a stored procedure that does not return any result sets. For stored procedures that return one or more result sets, use the fetch function.

For information about the SQL query language, see the SQL Tutorial.

Example: "DROP TABLE patients"

Data Types: char | string

Version History

Introduced in R2020b