. У меня есть таблица с именем people
со следующим columns-MySQL Обновление нескольких строк с уникальной меткой времени в строке
people_id (primary key, auto inc)
first_name
last_name
timestamp (default - current_timestamp)
Эта таблица уже 30000 строк до последнего столбца timestamp
был добавлен, так что в настоящее время все временные метки совпадают. Я хочу, чтобы каждая временная метка была уникальной, но я не могу этого сделать.
Ближайший answer на StackOverflow я мог найти, представляет Oracle, который предлагает следующий запрос -
UPDATE ITEM_HISTORY SET my_timestamp = SYSTIMESTAMP + NUMTODSINTERVAL(rownum/1000, 'SECOND');
Но этот запрос не работает в MySQL, потому что нет таких функций для NUMTODSINTERVAL
и SYSTIMESTAMP
. Я пытался использовать вышеупомянутый запрос, как -
UPDATE people SET `timestamp` = CURRENT_TIMESTAMP + people_id;
Но это не удалось, я думаю, потому что, people_id (INT), не может быть добавлен метками времени. Итак, есть ли способ конвертировать и добавлять people_id в метку времени или каким-либо другим способом обновлять строки с уникальными отметками времени?
Спасибо.
'UPDATE people SET \' timestamp \ '= CURRENT_TIMESTAMP + INTERVAL people_id MINUTE;' –
Требование уникальности временных меток кажется очень плохим критерием, и тот, который должен вызывать значительные головные боли дальше по линии. Посмотрите еще раз на свои требования. – eggyal
@eggyal Да, я читал то же самое об этом на связанном SO-ответе. Но мне просто нужно, чтобы они были уникальны, чтобы подтолкнуть обновленные строки к андроидному приложению (и для первого запуска нажатия этого обновления возникла проблема, потому что все строки 30K имели одинаковые временные метки), я раньше отправлялся с Unique/Primary Только Id, но тогда я не мог пропустить последние обновленные строки. Можете ли вы предложить альтернативу для этого? Спасибо, –