Connection to a database

1 view (last 30 days)
Fragkiskos Nikolakis
Fragkiskos Nikolakis on 12 Jan 2017
Answered: Piyush Kumar on 26 Sep 2024
I have a script in which data from an ORACLE database are called. The problem is that the connection isn't always succesfull. After 3-4 attempts the connection is succesfull. Do you know why does ths happen? Thanks
  3 Comments
the cyclist
the cyclist on 12 Jan 2017
Are you certain that it is not something outside of MATLAB that is failing? It would be unusual for the code itself to be a source of intermittent failure.
Fragkiskos Nikolakis
Fragkiskos Nikolakis on 12 Jan 2017
Edited: the cyclist on 12 Jan 2017
the query for the database is
function[Vessel_Data]=stpQuery(selected_fields1)
% Set preferences with setdbprefs.
s.DataReturnFormat = 'dataset';
s.ErrorHandling = 'store';
s.NullNumberRead = 'NaN';
s.NullNumberWrite = 'NaN';
s.NullStringRead = 'null';
s.NullStringWrite = 'null';
s.JDBCDataSourceFile = '';
s.UseRegistryForSources = 'yes';
s.TempDirForRegistryOutput = 'Path';
s.DefaultRowPreFetch = '10000';
setdbprefs(s)
% Make connection to database. Note that the password has been omitted.
% Using ODBC driver.
conn = database('Base','usr','pswd');
% Read data from database.
e = exec(conn,selected_fields1);
e = fetch(e);
close(e)
% Assign data to output variable.
Vessel_Data = e.Data;
% Close database connection.
close(conn)

Sign in to comment.

Answers (1)

Piyush Kumar
Piyush Kumar on 26 Sep 2024
The intermittent connection issue to a database may be due to several problems -
  • Network issues: Check the network connectivity of the server where the database is hosted and the server from where you are trying to connect.
  • Database load: If the database server is under heavy load, it might not be able to handle all connection requests immediately.
  • Timeout settings: Check the connection timeout-related settings of the database.
Refer to the following resources to get more details -

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!