historicamente, nas versões mySql antes de 5.6.5, aí foi uma restrição que limitou uma tabela para ter apenas uma coluna de registro de data e hora com uma cláusula padrão current_timestamp ou na atualização current_timestamp. Essa limitação estendida a Int, Bigint e Interaros Smallint de volta quando foram introduzidos inicialmente em 2008.
Essa limitação surgiu da implementação do legado preocupações que exigiam uma implementação específica para a funcionalidade current_timestamp.
Por exemplo, considere a definição da tabela a seguir, que tenta definir duas colunas de data e hora com o valor current_timestamp:
CREATE TABLE `foo` ( `ProductID` INT(10) UNSIGNED NOT NULL, `AddedDate` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP, `UpdatedDate` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP ) ENGINE=INNODB;
Esta definição resultaria no seguinte erro:
Previously, at most one TIMESTAMP column per table could be automatically initialized or updated to the current date and time. This restriction has been lifted. Any TIMESTAMP column definition can have any combination of DEFAULT CURRENT_TIMESTAMP and ON UPDATE CURRENT_TIMESTAMP clauses. In addition, these clauses now can be used with DATETIME column definitions.
este erro indicou que a definição da tabela violou a restrição mencionada acima mencionada. &&&] Remoção da restrição
Isenção de responsabilidade: Todos os recursos fornecidos são parcialmente provenientes da Internet. Se houver qualquer violação de seus direitos autorais ou outros direitos e interesses, explique os motivos detalhados e forneça prova de direitos autorais ou direitos e interesses e envie-a para o e-mail: [email protected]. Nós cuidaremos disso para você o mais rápido possível.
Copyright© 2022 湘ICP备2022001581号-3