2011-03-03 18 views
5

Voy a crear una tabla con una columna que almacena Created_date que es de datetime datatype. Y mi objetivo es establecer su valor predeterminado como sysdate().¿Cómo establecer el valor predeterminado para sysdate en MySql?

me trataron

crear la tabla tbl_table ( created_date fecha y hora DEFAULT sysdate())

Esto me da error diciendo que no es una declaración válida por defecto. Usé una lógica similar en Oracle. Por favor, ayúdame a resolver esto.

Gracias de antemano.

+0

lea [this] (http://dev.mysql.com/doc/refman/5.5/en/opciones_de_servidor.html#option_mysqld_sysdate-is-now) – diEcho

Respuesta

12

Trate CREATE TABLE tbl_table (created_date TIMESTAMP DEFAULT NOW())

Pero: NOW es diferente de sysdate y TIMESTAMP es diferente de datetime, tenga esto en cuenta.

Normaly sólo se puede usar constantes para los valores por defecto. TIMESTAMP es el único tipo de columna que admite una función como NOW(). Consulte here para obtener más información sobre MySQL Bugtracker.

+0

así que no hay forma de mantenerlo actualizado? – Antoops

+0

Ver mi edición anterior – theomega

+0

Tengo pocos informan de [link] (http://dev.mysql.com/doc/refman/5.0/en/timestamp.html) que ya es decir marca de tiempo se actualizará. Pero cuando esto se actualiza? como cuando tocamos esa fila incluso para una consulta de selección? – Antoops

Cuestiones relacionadas