Я пытаюсь обновить таблицу MySQL с «датой истечения». Я собрал значение timestamp для всех моих строк, когда люди зарегистрировались в таблице, но теперь я хочу создать дату истечения срока действия относительно этой отметки времени (не относительно текущего времени). Вот мой код:Строка UPDATE относительно CURRENT_TIMESTAMP не дает правильного значения
$timestamp = $row['timestamp'];
$sql_update = "
UPDATE jobs
SET expiration_date = DATE_ADD('$timestamp',INTERVAL 56 DAY)";
$result_update = $mysqli->query($sql_update) or die($mysqli->error);
Поймите, что это в настоящее время работает в «а» петле, так она работает через каждую строку таблицы их обновления, как она идет. Проблема в том, что я запустил ее один раз, и все, что было сделано, это обновить строку «expiration_date» до 56 дней с «СЕЙЧАС», не за 56 дней от значения timestamp. Временная метка установлена на CURRENT_TIMESTAMP, когда проблема связана с записью новой записи, которую я предполагаю. Я выделил $ timestamp для устранения неполадок, и он отгоняет правильное значение (а не текущее время), когда я повторяю его, но когда он идет на фактическое обновление даты истечения срока действия, он, похоже, извлекает из факта, что это CURRENT_TIMESTAMP. Есть ли способ явного запроса для значения метки времени?
Я надеюсь найти способ, который не связан с реструктуризацией базы данных. Я знаю, что я мог бы использовать это вместо строки timestamp, я мог бы сделать ее строкой datetime и установить ее значение NOW(), когда база данных будет первоначально запрошена, чтобы добавить строку, но я бы предпочел найти решение внутри способ установки таблицы в настоящий момент. Благодаря!