docs: def UpdateCronJob(self,
                      cronjob_id,
                      last_run_status=db.Database.unchanged,
                      last_run_time=db.Database.unchanged,
                      current_run_id=db.Database.unchanged,
                      state=db.Database.unchanged,
                      forced_run_requested=db.Database.unchanged,
                      cursor=None):
      """Updates run information for an existing cron job."""
      updates = []
      args = []
      if last_run_status != db.Database.unchanged:
        updates.append("last_run_status=%s")
        args.append(int(last_run_status))
      if last_run_time != db.Database.unchanged:
        updates.append("last_run_time=FROM_UNIXTIME(%s)")
        args.append(mysql_utils.RDFDatetimeToTimestamp(last_run_time))
      if current_run_id != db.Database.unchanged:
        updates.append("current_run_id=%s")
        args.append(db_utils.CronJobRunIDToInt(current_run_id))
      if state != db.Database.unchanged:
        updates.append("state=%s")
        args.append(state.SerializeToString())
      if forced_run_requested != db.Database.unchanged:
        updates.append("forced_run_requested=%s")
        args.append(forced_run_requested)
  
      if not updates:
        return
  
      query = "UPDATE cron_jobs SET "
      query += ", ".join(updates)
      query += " WHERE job_id=%s"
      res = cursor.execute(query, args + [cronjob_id])
      if res != 1:
        raise db.UnknownCronJobError("CronJob with id %s not found." % cronjob_id)