Estoy escribiendo una serie de scripts para actualizar numerosas tablas de acceso. Me gustaría agregar una columna a cada uno que tenga un campo llamado "date_created" que es una marca de tiempo de cuando se crea el registro. Hacer esto a través de la vista de tabla es simple, simplemente configure DefaultValue = now(). Sin embargo, ¿cómo lo lograría en sql?Microsoft Access DateTime Default Ahora a través de SQL
Este es mi intento actual de tablas que ya tienen la columna. Este ejemplo usa "tblLogs".
ALTER TABLE tblLogs ALTER COLUMN date_created DEFAULT now()
¡Gracias por su ayuda!
Actualización - ¿Habría alguna manera de hacer esto en VBA?
Actualización 2 - Probado todas las respuestas y la siguiente por onedaywhen es la getdate más corta y más precisa
CurrentProject.Connection.Execute _
"ALTER TABLE tblLogs ALTER date_created DATETIME DEFAULT NOW() NOT NULL;"
ahora() es una función tonto para usar si desea que el FECHA. Lo que realmente quiere es establecer el valor predeterminado en Fecha(). –
Dicen "DateTime ... marca de tiempo de cuando se crea el registro", para lo cual la función NOW() es la más adecuada. – onedaywhen
OK, sería más preciso coordinar el nombre del campo y los datos que se ingresan, pero llamarlo "tonto" es grosero. La retroalimentación constructiva no debe ser condescendiente ni contener insultos. – JeffO