Mysql
 sql >> Base de Dados >  >> RDS >> Mysql

Consulta com dois carimbos de data/hora não está funcionando


O TIMESTAMP é na verdade semelhante a a DATETIME, mas o primeiro TIMESTAMP que você declara obtém inicialização automática:

http://dev.mysql.com/doc/refman /5.0/en/timestamp-initialization.html

Então, quando você escreve TIMESTAMP sem atributos pela primeira vez, o MySQL o converte internamente adicionando "DEFAULT CURRENT_TIMESTAMP". Quando o MySQL encontra o segundo TIMESTAMP onde você define explicitamente CURRENT_TIMESTAMP, entra em conflito.

Se você definir CURRENT_TIMESTAMP na primeira linha, no entanto, será redundante - e como você não especifica nada na segunda, a segunda não recebe nenhum padrão e não entra em conflito.

No link acima, "Não precisa ser a primeira coluna TIMESTAMP em uma tabela que é inicializada ou atualizada automaticamente para o carimbo de data/hora atual. No entanto, para especificar a inicialização ou atualização automática para uma coluna TIMESTAMP diferente, você deve suprimir as propriedades automáticas da primeiro."