%% Remove Driver-Specific Connection Option
% Edit an existing MySQL® native interface data source for a MySQL database. Set an additional driver-specific option, and test the database connection. Then, remove the additional driver-specific option, and test and save the data source.
%
% Retrieve the existing MySQL native interface data source.

datasource = "MySQLDataSource";
opts = databaseConnectionOptions(datasource)

% opts is an SQLConnectionOptions object with these properties:
% DataSourceName — Name of the data source
% Vendor — Database vendor name
% DatabaseName — Name of the database
% Server — Name of the database server
% PortNumber — Port number
%
% Add a driver-specific connection option by using a name-value pair argument. The option specifies a timeout value for establishing the database connection. opts contains a new property for the additional connection option.

opts = setoptions(opts,"OPT_CONNECT_TIMEOUT",20)

%
% Test the database connection with a user name and password. The testConnection function returns the logical 1, which indicates the database connection is successful.

username = "root";
password = "matlab";
status = testConnection(opts,username,password)

%
% Remove the driver-specific option for specifying a timeout value. The opts object no longer contains the OPT_CONNECT_TIMEOUT property.

opts = rmoptions(opts,"OPT_CONNECT_TIMEOUT")

%
% Test the database connection again.

username = "root";
password = "matlab";
status = testConnection(opts,username,password)

%
% Save the data source.

saveAsDataSource(opts)

% Copyright 2020 The MathWorks, Inc.