¿Cómo actualizar la marca de tiempo actual en MySQL?

MySQL es un RDBMS fácil de usar. Muchas organizaciones prefieren usarlo debido a su facilidad de mantenimiento, esquemas más fáciles de preparar, procedimientos almacenados, disparadores y mantenimiento de bases de datos. En este artículo, veamos cómo actualizar a la marca de tiempo actual en MySQL.

Paso 1: creación de la base  de datos

Primero creamos la base de datos. Aquí GEEKSFORGEEKS es el nombre de la base de datos.

Consulta:

CREATE DATABASE GEEKSFORGEEKS;

Paso 2: Active la base de datos

Consulta:

USE GEEKSFORGEEKS;

Paso 3: cree una tabla de empleados con el campo empLoginTime como marca de tiempo.

Consulta:

CREATE TABLE employee
   (
       empId int NOT NULL,
       empName VARCHAR(20),
       empLoginTime TIMESTAMP
   );

Producción:

Paso 4: Podemos configurar la zona horaria de la siguiente manera

Consulta:

SET TIME_ZONE = '+00:00';

Si queremos cambiar la Zona horaria eso también se puede hacer.

Paso 5: Ahora, insertemos los registros

Consulta:

INSERT INTO employee
    (
        empId, empName, empLoginTime
    )
VALUES
    (1, 'XXX', '2021-01-01 00:00:01'),
    (2, 'YYY', '2021-01-01 00:00:01'),
    (3, 'ZZZ', '2021-01-01 00:00:01'),
    (4, 'XYZ', '2021-01-01 00:00:01');

Paso 6: Mostrar los registros

Consulta:

SELECT * FROM employee;

Producción:

Aquí, la columna ‘empLoginTime’ indica el valor en el patrón de zona horaria mencionado.

Paso 7: Hay posibilidades de ver datos de diferentes zonas horarias. Durante esos tiempos, podemos configurar la zona horaria como queramos.

Consulta:

SET time_zone ='+03:00';
SELECT * FROM employee;

Producción:

En MySQL, hay una función para mantener el valor de marca de tiempo actual predeterminado para una columna. es decir, empLoginTime debería obtener automáticamente el valor de la marca de tiempo cada vez que el empleado inicie sesión en el sistema. Es equivalente a actualizar la columna a un valor de marca de tiempo actual.

Consulta:

ALTER TABLE employee MODIFY 
COLUMN empLoginTime 
TIMESTAMP DEFAULT CURRENT_TIMESTAMP
ON UPDATE CURRENT_TIMESTAMP;    

Veamos ahora la estructura de la tabla.

Consulta:

DESC employee;

Ventaja de tener la actualización de current_timestamp:

Con DEFAULT CURRENT_TIMESTAMP y ON UPDATE CURRENT_TIMESTAMP, la columna «empLoginTime» tiene la marca de tiempo actual para su valor predeterminado y se actualiza automáticamente a la marca de tiempo actual.

Ahora insertemos los registros en la tabla. Dado que tenemos la marca de tiempo actual predeterminada y en la actualización también a la marca de tiempo actual, no necesitamos dar los valores para ‘empLoginTime’. A continuación se muestra la consulta para hacer eso.

Consulta:

**Since empLoginTime has the current 
timestamp value, we no need to add the value
 explicitly to that column**
INSERT INTO employee (empId, empName) VALUES
(5, 'ABC'),(6,'CDE');

Mostrar los registros

Consulta:

SELECT * FROM employee;

Siempre es mejor tener las columnas ‘iniciar sesión’ y ‘cerrar sesión’ y también tipos de columnas similares para tener valores predeterminados de marca de tiempo actual. Si no está configurado, podemos actualizar los valores de la columna fácilmente.  

En MySQL Workbench, tenemos que hacer lo siguiente:

Pasos para actualizar los datos

  • Navegue a Editar -> Preferencias.
  • Luego haga clic en la pestaña «Editor de SQL» y desmarque la casilla de verificación «Actualizaciones seguras».
  • Luego haga clic en Consulta -> Reconectar al servidor.

Ahora ejecuta tu consulta SQL

Consulta:

UPDATE employee set empLoginTime = CURRENT_TIMESTAMP
WHERE empId < 4;

Mostrar los registros 

Consulta:

SELECT * FROM employee;

Por lo general, deberíamos tener «tiempo creado» y «tiempo modificado» en una tabla para tener los valores actualizados. Eso ayudará para el propósito de la auditoría. La restricción predeterminada es útil para establecer el valor de marca de tiempo actual. Durante la creación de la tabla en sí, se puede establecer el valor predeterminado o, de lo contrario, mediante el comando ALTER, podemos establecer la restricción predeterminada. La otra forma es usando el comando ‘ACTUALIZAR’ y que se ve en el ejemplo anterior.

Publicación traducida automáticamente

Artículo escrito por priyarajtt y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *