I have to count the number of occurrences of a record (x) in a Table "Stocks" from a database "MultiProductInventory". The database table consists of 9 fields , the first field is the PI (Product Id) and the other fields are F1,F2,…,F8. The arguments for field variables Pi,F1,F2,..,F8 are supplied at run time from an array (x). I ran the following code. The MATLAB is giving error message, "Invalid or closed connection" and " Undefined function or method "fetch" for input argumnts of type struct. can any body explain me where is the mistake in the code.
function [ Pocc ] = Multiprodinv1(x)dbpath = ['C:\ Users\admin\Documents\MultiProductInventory'];url = [ [ 'jdbc:odbc:Driver = {Microsoft Access Driver(*.mdb,*.accdb)};DSN =' ';DBQ ='] dbpath];conn = database('MultiProductInventory','','','Sun.jdbc.odbc.JdbcOdbcDriver',url);query1 = ['select all ID from Stocks where PI=',num2str(x(1))]; query2=['']; for fidx=1:8 query2 = strcat(query2,sprintf('and F%d=',fidx),num2str(x(fidx+1))); end query = strcat(query1,query2); curs=exec(conn,['query']);curs.Messagecurs=fetch(curs);y= curs.Data;Pocc=length(y);
Best Answer