Al insertar datos en las tablas, a veces necesitamos capturar la marca de tiempo de inserción en la tabla. Hay una manera muy simple que podríamos usar para capturar la marca de tiempo de las filas insertadas en la tabla.
Capture la marca de tiempo de las filas insertadas en la tabla con la restricción DEFAULT en SQL Server.
Utilice la restricción DEFAULT al crear la tabla:
Sintaxis:
CREATE TABLE TableName (ColumName INT, ColumnDateTime DATETIME DEFAULT CURRENT_TIMESTAMP) GO
Ejemplo:
Vamos a crear una tabla llamada ‘GeekTab’.
CREATE TABLE GeekTab (ID INT, InDtTm DATETIME DEFAULT CURRENT_TIMESTAMP) ; GO
Insertemos algunos valores en la tabla.
INSERT INTO GeekTab (ID) VALUES (1), (2) ; GO
INSERT INTO GeekTab (ID)VALUES (3), (4) ; GO
Ahora, seleccionemos el valor de la tabla.
SELECT * FROM GeekTab ; GO
Producción:
IDENTIFICACIÓN | InDtTm |
---|---|
1 | 2020-12-30 13:08:54.193 |
2 | 2020-12-30 13:08:54.193 |
3 | 2020-12-30 13:10:53.163 |
4 | 2020-12-30 13:10:53.163 |
Conclusión:
Cuando seleccionamos el valor de la tabla GeekTab , podemos ver que tiene la marca de tiempo actual en la tabla en la columna InDtTm. Esto se debe a que la columna InDtTm se creó con DATETIME DEFAULT CURRENT_TIMESTAMP.
Ejemplo basado en escenario:
Supongamos que tenemos la tabla “EmployeeTab”, cada vez que se incorpora un nuevo empleado a la empresa, se inserta un nuevo registro en la tabla:
CREATE TABLE EmployeeTab (Name varchar(100), ID INT, Location varchar(100), InDtTm DATETIME DEFAULT CURRENT_TIMESTAMP);
SELECT Name, ID, Location FROM EmployeeTab ;
Nombre | IDENTIFICACIÓN | Ubicación |
---|---|---|
Ankit | 234 | Delhi |
Chetán | 456 | Noida |
Khushi | 549 | Noida |
Mikesh | 654 | Delhi |
varun | 876 | Noida |
Kapil | 650 | Delhi |
Para obtener la fecha y hora de inserción para cada entrada como ‘JoinDate’, se puede usar la siguiente consulta:
SELECT Name, ID, Location, InDtTm as JoinDate FROM EmployeeTab ;
Nombre | IDENTIFICACIÓN | Ubicación | Fecha de Ingreso |
---|---|---|---|
Ankit | 234 | Delhi | 2019-11-24 10:10:53.163 |
Chetán | 456 | Noida | 2018-07-14 10:12:34.163 |
Khushi | 549 | Noida | 2019-05-04 10:15:43.163 |
Mikesh | 654 | Delhi | 2018-09-21 10:13:13.163 |
varun | 876 | Noida | 2019-10-24 10:11:33.163 |
Kapil | 650 | Delhi | 2018-12-14 10:10:53.163 |
Nota: Hay una excepción al usar esta función y si alguien inserta el valor explícito dentro de la columna ColumnDateTime, la columna tendría el valor recién insertado y no el valor predeterminado.
Publicación traducida automáticamente
Artículo escrito por khushboogoyal499 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA