view m-toolbox/classes/@repogui2/getFields.m @ 5:5a49956df427 database-connection-manager

LTPDAPreferences panel for new LTPDADatabaseConnectionManager
author Daniele Nicolodi <nicolodi@science.unitn.it>
date Mon, 05 Dec 2011 16:20:06 +0100
parents f0afece42f48
children
line wrap: on
line source

% Get a list of database fields
%
% M Hewitson
%
% $Id: getFields.m,v 1.3 2011/04/08 08:56:36 hewitson Exp $
%
function fields = getFields(mainfig, conn)
  
  % get the selected table
  tblSel = findobj(mainfig.handle, 'Tag', 'tableSelect');
  tbls   = get(tblSel, 'String');
  tbl    = tbls{get(tblSel, 'Value')};
  
  if ~isempty(conn)
    % get the databases
    try
      q = sprintf('describe %s', tbl);
      curs = exec(conn, q);
      curs = fetch(curs);
      fields = curs.Data(:,1);
      close(curs);
    catch
      disp(sprintf('### Server returned: %s', curs.Message));
      warning('!!! Can not read from database');
      fields = {'-'};
    end
  else
    fields = {'-'};
  end
  
end