paolo@bimodesign.com | +34 608 61 64 10

DB Relational

        

Convertire formato data da Oracle a MySql

Per la migrazione da Oracle a MySql, le date, che sono in formato differente, occorre convertirle prima di eseguire l'insert nella relativa tabella.
Ho creato questa semplice funzione to_timestamp, che esiste gia' in Oracle, ma non in MySql.

delimiter $

CREATE FUNCTION  to_timestamp(entrada VARCHAR(40), formato varchar(50)) RETURNS varchar(40) CHARSET latin1
BEGIN
  DECLARE salida VARCHAR(40);
  SET salida = CONCAT(CONCAT_WS('-',CONCAT('20',SUBSTRING(entrada, 7, 2)),SUBSTRING(entrada, 4, 2),SUBSTRING(entrada, 1, 2)),' ',CONCAT_WS(':',SUBSTRING(entrada, 10, 2),SUBSTRING(entrada, 13, 2),SUBSTRING(entrada, 16, 2)));
  RETURN salida;
END$
delimiter ;