Considere el siguiente script de creación de tablas:
create_table :foo do |t|
t.datetime :starts_at, :null => false
end
¿Es posible establecer el valor predeterminado como la hora actual?
Estoy tratando de encontrar un equivalente independiente de DB en rieles para las definiciones de columna SQL que se dan a continuación:
Sintaxis de Oracle
start_at DATE DEFAULT SYSDATE()
Sintaxis de MySQL
start_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP
O
start_at DATETIME DEFAULT NOW()
CURRENT_TIMESTAMP
será el momento del inicio de la transacción actual, por lo que varios registros creados en la misma transacción obtendrán el mismo valor. Si desea la hora actual real en que se ejecuta la declaración (ignorando el contexto de la transacción), consulteCLOCK_TIMESTAMP
.