From OpenSCADAWiki
Jump to: navigation, search

Подсистема "БД" (SYS.BD)

Функции объекта "БД" (SYS.BD["TypeDB"]["DB"]):

  • ElTp cfg(string nm) — получает значение конфигурационного поля nm объекта.
  • bool cfgSet(string nm, ElTp val) [доступ к соответствующей подсистеме] — устанавливает конфигурационное поля nm объекта в значение val.
  • Array SQLReq( string req, bool tr = EVAL ); — осуществляет SQL-запрос req к БД, внутри (tr=true), вне (tr=false) или безразлично (tr=EVAL) к транзакции. Возвращает массив строк таблицы результата с полями по индексам и по именам колонок. В случае ошибки её значение помещается в свойство "err" результата.
    DBTbl = SYS.BD.MySQL.GenDB.SQLReq("SELECT * from DB;");
    if(DBTbl.err.length) SYS.messInfo("TEST DB","Error: "+DBTbl.err);
    else for(var iRw = 0; iRw < DBTbl.length; iRw++) {
      var rec = "";
      for(var iFld = 0; iFld < DBTbl[iRw].length; iFld++) rec += DBTbl[iRw][iFld] + "\t";
      SYS.messInfo("TEST DB", "Row "+iRw+": "+rec);
      //Get column value by the name
      if(iRw) SYS.messInfo("TEST DB", "Row "+iRw+": 'NAME'"+DBTbl[iRw]["NAME"]);
    }