(SQL) Добавить столбцы date entry и date_update в существующую SQL таблицу - PullRequest
0 голосов
/ 09 июля 2020

, так что у меня есть SQL таблица

id    Name
1     Robert
2     Emily

Как мне добавить столбец, который автоматически заполняет дату входа, а затем второй столбец, который заполняет date_updated каждый раз, когда запись обновляется (id 2 , Эмили была "обновлена" до Эмили Райан ниже), но по умолчанию используется date_entry, если дата не была обновлена?:

id    Name         date_entry     date_updated
1     Robert       '2020-07-08'   '2020-07-08'
2     Emily Ryan   '2020-07-08'   '2020-07-09'

1 Ответ

0 голосов
/ 09 июля 2020

Вставленный день легко определяется с использованием значения по умолчанию для столбца. Когда вставлены новые данные. Он будет заполнен текущей датой, если вы не укажете для нее значение.

Для даты обновления вам нужно будет создать триггер.

ALTER TABLE YourTable ADD COLUMN date_entry DATE DEFAULT CURRENT_DATE();
ALTER TABLE YourTable ADD COLUMN date_updated DATE;

CREATE TRIGGER YourTable.update_date_updated  
BEFORE UPDATE ON YourTable 
    FOR EACH ROW 
BEGIN
    SET new.date_updated = CURRENT_DATE();
END
...