MySQL Database interface

I do not have MATLAB's Database toolbox. I am accessing a database with the following:
The software apparently only outputs data in columns. I have 137 columns and individually writing out [A(:,1),A(:,2),...,A(:,137)] seems pointless. Using a loop is rather slow. Suggestions?

 採用された回答

Oleg Komarov
Oleg Komarov 2011 年 8 月 2 日

0 投票

If you're referring to the LHS, then you can use:
[A{1,1:137}] = ...
After that, if the data is of the same datatype:
[A{:}]

11 件のコメント

Robert
Robert 2011 年 8 月 3 日
Both of those work and answer my question, but aren't very fast. Any suggestions?
Oleg Komarov
Oleg Komarov 2011 年 8 月 3 日
It depends on what you're doing on your RHS not the LHS and you haven't showed any part of that code. How big is the final A?
Robert
Robert 2011 年 8 月 5 日
It is 57000x137. The RHS is just calling the mysql database with the particular query I had written.
Oleg Komarov
Oleg Komarov 2011 年 8 月 5 日
60 MB are transferred which is not enough to justify signifcant slowdowns. Then it should depend on the query. Do you observe different timings if the query is executed directly on mySQL?
Also, you can try to run the command in the profiler and see what's taking the most time.
Robert
Robert 2011 年 8 月 11 日
To display the data, MySQL Query Browser takes 25 seconds, but in parentheses it says 0.38 seconds. I assume this is the read time. My read time in matlab is around 50 seconds.
Oleg Komarov
Oleg Komarov 2011 年 8 月 11 日
Have you tried to use the profiler to see why there's such a big difference in timings between MATLAB and mySQL?
Robert
Robert 2011 年 8 月 16 日
I'm not sure what the profiler is. Is it a gui that let's you view data statistics? I don't think I have the software.
Oleg Komarov
Oleg Komarov 2011 年 8 月 16 日
http://www.mathworks.com/help/techdoc/matlab_env/f9-17018.html
Robert
Robert 2011 年 8 月 16 日
The profiler indicates that all the time is spent in the mysql function.
Oleg Komarov
Oleg Komarov 2011 年 8 月 16 日
I guess this function is not an .m file, which means I cannot tell wether some manipulation is going on.
Try an alternative: http://www.mathworks.com/matlabcentral/fileexchange/?term=mysql
Or many use mym: http://sourceforge.net/projects/mym/
Robert
Robert 2011 年 8 月 17 日
It appears that most alternatives are based off of the version I'm using. Thanks for your assistance, but I think I'll just stick with my current setup.

サインインしてコメントする。

その他の回答 (0 件)

カテゴリ

タグ

Community Treasure Hunt

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

Start Hunting!

Translated by