How to declare variables in a function

35 views (last 30 days)
I am curious as to why the variables 'user' and 'pass' are not recognized by Matlab in the following snippet. When the user launches the function, Matlab throws a undefined function or variable 'pben' where pben is the input from the user.
function update_table(user, pass)
% Info
username = user;
password = pass;
datasource = 'SGDOP';
% Connection and SQL query
conn = database(datasource, username, password);
sqlquery = ['SELECT * from table x'];
data = fetch(conn, sqlquery);
save('data.mat', 'data')
Adam Danz
Adam Danz on 1 Aug 2019
My bet is that when you call update_tabel(pben, aaaa), pben is not defined.

Sign in to comment.

Accepted Answer

Steven Lord
Steven Lord on 1 Aug 2019
My guess is that you're trying to call this function like:
update_table(pben, somePassword)
That attempts to pass the contents of the variable named pben or the result of calling a function named pben with 0 input arguments and 1 output argument into update_table. If you want to pass the literal text pben into the function, you need to specify it as a char vector or as a string.
update_table('pben', somePassword)
update_table("pben", somePassword)
If your password is not stored in a variable named somePassword but is the literal text somePassword, you need to pass that in as text as well.
update_table('pben', 'somePassword')
update_table("pben", "somePassword")
  1 Comment
Blue on 1 Aug 2019
Ah. That was embarrasingly simple. Thank you.

Sign in to comment.

More Answers (0)



Community Treasure Hunt

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

Start Hunting!