У меня есть таблица с именем Users с созданным вызовом столбца. Всякий раз, когда создается запись, я хочу добавить дату и время.Ошибка MySQL с изменяющимся столбцом для добавления по умолчанию
Пользователи Таблица:
CREATE TABLE `Users` (
`userId` int(11) unsigned NOT NULL AUTO_INCREMENT,
`fullName` varchar(50) DEFAULT NULL,
`firstName` varchar(25) NOT NULL DEFAULT '',
`lastName` varchar(25) NOT NULL DEFAULT '',
`address` varchar(50) NOT NULL DEFAULT '',
`city` varchar(25) DEFAULT NULL,
`state` char(2) DEFAULT NULL,
`zipCode` varchar(25) DEFAULT NULL,
`email` varchar(50) NOT NULL DEFAULT '',
`cellPhone` varchar(15) DEFAULT NULL,
`birthDate` date NOT NULL,
`creditCard` varchar(250) NOT NULL DEFAULT '',
`subscriptionStarted` date NOT NULL,
`subscriptionEnded` date NOT NULL,
`basicPlan` tinyint(1) DEFAULT NULL,
`standardPlan` tinyint(1) DEFAULT NULL,
`premiumPlan` tinyint(1) DEFAULT NULL,
`staff` tinyint(1) DEFAULT NULL,
`admin` tinyint(1) DEFAULT NULL,
`systemAdmin` tinyint(1) DEFAULT NULL,
`edited` datetime DEFAULT NULL,
`created` datetime DEFAULT NULL,
PRIMARY KEY (`userId`)
) ENGINE=InnoDB AUTO_INCREMENT=27 DEFAULT CHARSET=latin1;
теперь я добавил этот дополнительный запрос, чтобы сделать мой создал поле получить текущий DateTime при создании новой записи.
ALTER TABLE Users
ALTER COLUMN created SET DEFAULT CURRENT_TIMESTAMP
Проблема заключается в том, что я получаю следующее сообщение об ошибке при запуске альтер таблицы запроса
У Вас есть ошибка в вашем SQL синтаксиса; в руководстве, соответствует версии сервера MySQL для корректного синтаксиса использовать вблизи «CURRENT_TIMESTAMP» в строке 2
Я получаю сообщение об ошибке: Неверное значение по умолчанию для 'created' – user3862830
@ user3862830 Я предполагаю, что вы, возможно, используете версию сервера MySQL <5.6; Если это так, попробуйте изменить дату и время на отметку времени, поскольку более ранние версии не инициализировали поля datetime. – jpw
никогда не работает сейчас. Спасибо за помощь – user3862830