function DBwriteEL(DATAinsert,idElabData,ListaDate,NodeNum,Calcolo_Carico,...
    IDcentralina,DTcatena,cEL,ChEL,EL_NTC,conn)

nNodo = num2str(NodeNum);
l = ListaDate;

for ii=1:l
    idData = idElabData(ii,1);
    if  idData == 0 % Se la data non è su DB (=0), scrivo i dati
        tablename = 'ELABDATADISP';
        if ChEL(cEL) >= 2 && EL_NTC(cEL) == 1 % scrivo la T
            if Calcolo_Carico == 1 % scrivo sforzo e carico
                colnames = {'UnitName','ToolNameID','NodeNum','EventDate',...
                    'EventTime','XShift','T_node','calcerr','load_value','pressure'};
                data = [DATAinsert(ii,1),DATAinsert(ii,2),DATAinsert(ii,3),...
                    DATAinsert(ii,4),DATAinsert(ii,5),DATAinsert(ii,6),DATAinsert(ii,7),...
                    DATAinsert(ii,8),DATAinsert(ii,9),DATAinsert(ii,10)];
            else
                colnames = {'UnitName','ToolNameID','NodeNum','EventDate','EventTime','XShift','T_node','calcerr'};
                data = [DATAinsert(ii,1),DATAinsert(ii,2),DATAinsert(ii,3),...
                    DATAinsert(ii,4),DATAinsert(ii,5),DATAinsert(ii,6),DATAinsert(ii,7),DATAinsert(ii,8)];
            end
        else % NON scrivo la T
            if Calcolo_Carico == 1 % scrivo sforzo e carico
                colnames = {'UnitName','ToolNameID','NodeNum','EventDate','EventTime',...
                    'XShift','calcerr','load_value','pressure'};
                data = [DATAinsert(ii,1),DATAinsert(ii,2),DATAinsert(ii,3),...
                    DATAinsert(ii,4),DATAinsert(ii,5),DATAinsert(ii,6),DATAinsert(ii,8),...
                    DATAinsert(ii,9),DATAinsert(ii,10)];
            else
                colnames = {'UnitName','ToolNameID','NodeNum','EventDate','EventTime',...
                    'XShift','calcerr'};
                data = [DATAinsert(ii,1),DATAinsert(ii,2),DATAinsert(ii,3),...
                    DATAinsert(ii,4),DATAinsert(ii,5),DATAinsert(ii,6),DATAinsert(ii,8)];
            end
        end
        fastinsert(conn,tablename,colnames,data);
    else % altrimenti li aggiorno  
         tablename = 'ELABDATADISP';
         if ChEL(cEL) >= 2 && EL_NTC(cEL) == 1 % scrivo la T
             if Calcolo_Carico == 1
                 colnames = {'XShift','T_node','calcerr','load_value','pressure'};
                 data = [DATAinsert(ii,6),DATAinsert(ii,7),DATAinsert(ii,8),...
                     DATAinsert(ii,9),DATAinsert(ii,10)];
             else
                 colnames = {'XShift','T_node','calcerr'};
                 data = [DATAinsert(ii,6),DATAinsert(ii,7),DATAinsert(ii,8)];
             end
         else % NON scrivo la T
             if Calcolo_Carico == 1
                 colnames = {'XShift','calcerr','load_value','pressure'};
                 data = [DATAinsert(ii,6),DATAinsert(ii,8),DATAinsert(ii,9),DATAinsert(ii,10)];
             else
                 colnames = {'XShift','calcerr'};
                 data = [DATAinsert(ii,6),DATAinsert(ii,8)];
             end
         end
         whereclause = ['WHERE UnitName = ''' IDcentralina ''' and ToolNameID = '''...
             DTcatena ''' and NodeNum = ''' nNodo ''' and EventDate = ''' ...
             cell2mat(DATAinsert(ii,4)) ''' and EventTime = ''' cell2mat(DATAinsert(ii,5)) ''' '];
        update(conn,tablename,colnames,data,whereclause)
   end
end

end