"Se um trabalhador quiser fazer bem o seu trabalho, ele deve primeiro afiar suas ferramentas." - Confúcio, "Os Analectos de Confúcio. Lu Linggong"
Primeira página > Programação > Quais foram as restrições ao usar o current_timestamp com colunas de registro de data e hora em MySQL antes da versão 5.6.5?

Quais foram as restrições ao usar o current_timestamp com colunas de registro de data e hora em MySQL antes da versão 5.6.5?

Publicado em 2025-02-04
Navegar:560

What Were the Restrictions on Using CURRENT_TIMESTAMP with TIMESTAMP Columns in MySQL Before Version 5.6.5?

restrições em colunas de timestamp com current_timestamp no padrão ou na atualização de cláusulas nas versões MySQL antes de 5.6.5

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.

Erro] Mensagem e questões relacionadas

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

Apesar da base técnica para essa limitação, a equipe do MySQL reconheceu seu inconveniente. Posteriormente, no MySQL 5.6.5 (lançado em 10 de abril de 2012), a restrição foi levantada. pode ser inicializado automaticamente ou atualizado para a data e hora atuais. Essa restrição foi levantada. Qualquer definição de coluna de registro de data e hora pode ter qualquer combinação de cláusulas de current_timestamp padrão e na atualização Current_timestamp. Além disso, essas cláusulas agora podem ser usadas com definições de coluna DATETIME.

Tutorial mais recente Mais>

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