How to handle a database connection (mysql) in loops (for and parfor)?
조회 수: 2 (최근 30일)
이전 댓글 표시
Hello,
I already got a working code that does exactly this (see below). But I have to big problem that it is too slow. So I want to use that in parfor to speed it up and would be happy if you can give me hint of how to write the code using for parfor, many thanks.
%%"for-loop" version
db = 'my_database';
user = 'matlab';
password = '1234';
host = '100.200.300.4';
conn = database(db, user, password,'com.mysql.jdbc.Driver',['jdbc:mysql://' host ':3306/' db]);
setdbprefs('DataReturnFormat','cellarray');
for i = 1:1000
SQL = ['SELECT * FROM `my_table`;'];
e = exec(conn,SQL);
e = fetch(e);
data = e.Data;
end
close(conn)
댓글 수: 2
Taufik Sutanto
2013년 10월 13일
I have been trying to do this too ... However, it seems that the JDBC driver is not supporting the parallel process.
TIANTIANBABA
2021년 1월 17일
Did you find an anseer yet? It seems to me that exec and fetch can not work inside a parfor-loop.
답변 (1개)
참고 항목
카테고리
Help Center 및 File Exchange에서 Database Toolbox에 대해 자세히 알아보기
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!