docs: def _ActionDatabase(self, cmd, args = None, commit = True, error = True):
      """
      Do action on database.
  
      Parameters
      ----------
        cmd : string
          SQL command.
  
        args : tuple [optional : default = None]
          Arguments to be passed along with the SQL command.
          e.g. cmd="SELECT Value FROM Config WHERE Name=?" args=(fieldName, )
  
        commit : boolean [optional : default = True]
          If true commit database changes after command is executed.
  
        error : boolean [optional : default = True]
          If False then any sqlite3.OperationalError exceptions will cause this
          function to return None, otherwise the exception will be raised.
  
      Returns
      ----------
        If a valid result is obtained from the database this will be returned.
        If an error occurs and the error argument is set to False then the
        return value will be None.
      """
      goodlogging.Log.Info("DB", "Database Command: {0} {1}".format(cmd, args), verbosity=self.logVerbosity)
      with sqlite3.connect(self._dbPath) as db:
        try:
          if args is None:
            result = db.execute(cmd)
          else:
            result = db.execute(cmd, args)
        except sqlite3.OperationalError:
          if error is True:
            raise
          return None
        else:
          if commit is True:
            db.commit()
          return result.fetchall()