sql >> Database teknologi >  >> RDS >> Oracle

Hvordan konverterer man en sekvens af tegn til et datoformat for at gemme i databasen?

Her er et eksempel, der fungerer med dine testcases:

import java.text.SimpleDateFormat;  
import java.util.Date;  
public class StringToDateExample1 {  
    public static void main(String[] args)throws Exception {  
        String sDate1="20200913204839";  
        Date date1=new SimpleDateFormat("yyyyMMddhhmmss").parse(sDate1);  
        System.out.println(date1);
    }  
}  

Med testcase 20200913204839 det returnerer:

Sun Sep 13 20:48:39 UTC 2020

Her er, hvad tegnene i SimpleDateFormat betyder:

yyyy betyder et år (Eksempel:2020)

MM betyder en måned (eksempel:juli, august)

dd betyder en dag i en måned (eksempel:15)

HH betyder en time på en dag (eksempel:20)

mm og ss angiver henholdsvis minutter og sekunder (Eksempel:52:34)

Det behøver ikke at være en dato - bare en streng fungerer fint.

Og ja - at bruge SimpleDateFormat fungerer fint.

EDIT:Specifik formatering

Jeg har formateret det specifikt til din sag:

import java.text.SimpleDateFormat;  
import java.util.Date;  
public class StringToDateExample1 {  
    public static void main(String[] args)throws Exception {  
        String sDate1="20200913204839";  
        Date date1=new SimpleDateFormat("yyyyMMddhhmmss").parse(sDate1);
        String formatted = new SimpleDateFormat("dd-EE-yyyy hh:mm:ss").format(date1);
        System.out.println(formatted);
    }  
} 

Vi parser først strengen til en dato, hvorfra vi kan formatere.

En testcase 20200913204839 returnerer:

13-Sun-2020 08:48:39


  1. Få resultater fra mine egne og venners indlæg

  2. kan ikke oprette forbindelse til Postgres (pg) database fra mit Ruby Script ved hjælp af gem pg (Dette er ikke skinner, bare ren rubin)

  3. SQL for at få venner OG venner af venner af en bruger

  4. PHP 7.2.2 + mysql 8.0 PDO giver:autentificeringsmetode ukendt for klienten [caching_sha2_password]