sintaxis functions diferencia create mysql sql

mysql - functions - sql server



Valor predeterminado no vĂ¡lido para ''fechaAdded'' (7)

Tengo un problema estúpido con SQL que no puedo solucionar.

ALTER TABLE `news` ADD `dateAdded` DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP AUTO_INCREMENT , ADD PRIMARY KEY ( `dateAdded` )

Error:

(#1067)Invalid default value for ''dateAdded''

¿Puede alguien ayudarme?


¡Cambia el tipo de datetime a timestamp y funcionará! Tuve el mismo problema con mysql 5.5.56-MariaDB - MariaDB Server Espero que pueda ayudar ... lo siento si estoy privado


También tenga en cuenta que al especificar DATETIME como DATETIME(3) o como en MySQL 5.7.x, también debe agregar el mismo valor para CURRENT_TIMESTAMP(3) . Si no, seguirá arrojando '' Valor predeterminado no válido ''.


Tengo la versión 5.6.27 de mysql en mi LEMP y CURRENT_TIMESTAMP ya que el valor predeterminado funciona bien.


Tuve el mismo problema, después de solucionar solucionó mi problema.

  • Seleccione Tipo como ''TIMESTAMP''

  • NO INGRESE NINGUNA PARTE EN CAMPO DE LONGITUD / VALORES. MANTÉNGALO EN BLANCO

  • Seleccione CURRENT_TIMESTAMP como valor predeterminado.

Estoy usando MySQL ver 5.5.56


mysql versión 5.5 establece el valor predeterminado de fecha y hora como CURRENT_TIMESTAMP será un error de informe que puede actualizar a la versión 5.6, establece el valor predeterminado de fecha y hora como CURRENT_TIMESTAMP



CURRENT_TIMESTAMP solo es aceptable en los campos TIMESTAMP . DATETIME campos DATETIME deben dejarse con un valor predeterminado nulo o sin ningún valor predeterminado: los valores predeterminados deben ser un valor constante, no el resultado de una expresión.

documentos relevantes: http://dev.mysql.com/doc/refman/5.0/en/data-type-defaults.html

Puede solucionar esto configurando un desencadenante post-inserción en la tabla para completar un valor "ahora" en cualquier registro nuevo.