Visual Query Builder

4 ビュー (過去 30 日間)
George
George 2011 年 10 月 1 日
Hi i want to retrieve sql data using matlab.
The problem is that i want to use in the "where" statement a matlab variable.
Something like this:
e = exec(conn,'SELECT COLUMN1,COLUMN2 FROM DATABASE_NAME WHERE COLUMN1 IN (MATLAB_VARIABLE);
But there is an error: "Invalid Column Name".
I think that doesn't recognise that "MATLAB_VARIABLE" is a matlab variable.
If i try this: e = exec(conn,'SELECT COLUMN1,COLUMN2 FROM DATABASE_NAME WHERE COLUMN1 IN (MATLAB_VARIABLE(1)); again the following error occus:"MATLAB_VARIABLE" is not a recognised built in funtion name
Any help would be appreciated
Thanks George

採用された回答

Oleg Komarov
Oleg Komarov 2011 年 10 月 1 日
You have to convert the content of matlab variable to a char variable.
If MATLAB_VARIABLE is already a char then simply:
str = ['SELECT COLUMN1,COLUMN2 FROM DATABASE_NAME WHERE COLUMN1 IN (' MATLAB_VARIABLE(1) ')'];
exec(conn, str)
Otherways, if it is a scalar double you have to use sprintf or num2str or str2double.
In case you have an array of values you have to use sprintf and interveal with commas.
  1 件のコメント
George
George 2011 年 10 月 1 日
Thank you very much. I follow the instructions from the link: http://www.mathworks.com/support/solutions/en/data/1-174JK/index.html?product=DB&solution=1-174JK

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

その他の回答 (0 件)

カテゴリ

Help Center および File ExchangeScripts についてさらに検索

Community Treasure Hunt

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

Start Hunting!

Translated by