hi, i have a problem now and i think many people like me! please help, i tried to solve it but i can't

1 view (last 30 days)
i have a code below:
...
i = curs.Data{1}
update(connA, 'inputtb', {'Timeout'}, {'out'}, 'where ID = i')
...
in my project, ''i'' isn't constant. Because every time I find ID in my database, it return a new curs.Data{1} so I want ''i'' were a variable. Any time it return curs.Data{1}, the code update (below) will be execute, and ''i'' was imported value from curs.Data{1}. The problem is in whereclause, it seem like we can't put one variable into place ''i'' above!

Answers (2)

Image Analyst
Image Analyst on 1 May 2013
Try making it a string with the number embedded with sprintf():
theQuery = sprintf('where ID = %d', i);
curs.Data{1} update(connA, 'inputtb', {'Timeout'}, {'out'}, theQuery)
By the way, having many people "like" you is not a problem - it's great. You have many friends. Better than have many people hate you. :-)

hoang
hoang on 2 May 2013
I mean many people has the same problem like me.(my english is bad ^^)
thank for suggestion, i tried but it doesn't work.
I want to update my datable table in MS ACCESS with a specific row was a variable, not constant. I had defined the ODBC data resource with Matlab database toolbox.
example, in image below, i want to update row ID 5, Timeout from ''in'' to ''out'' but not use the code: update(connA, 'inputtb', {'Timeout'}, {'out'}, where ID = 5')
  4 Comments
Image Analyst
Image Analyst on 3 May 2013
I'm not sure what you're asking. What's your code for using the update() function? Actually I haven't used MATLAB with databases, so I'm not going to be any help.

Sign in to comment.

Community Treasure Hunt

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

Start Hunting!