Как сохранить метку времени как десятичную (17,3) в MySQL? - PullRequest
0 голосов
/ 20 августа 2010

Я пытаюсь сгенерировать триггер, в операторе триггера мне нужно установить столбец типа decimal (17,3) с фактической временной меткой или секундами временной метки unix, но не могу найти решение.

Ответы [ 2 ]

0 голосов
/ 17 февраля 2013

// Попробуйте это (код Java)

Timestamp timestamp = new Timestamp(System.currentTimeMillis());// current time
      String decimalTime=  new SimpleDateFormat("yyyyMMddhhmmss.SSS").format(timestamp);
        System.err.println(decimalTime);

// в mysql

SELECT timestamp('<decimalTime>');// eg:-
0 голосов
/ 20 августа 2010

Я нашел решение

, указав тип данных в таблице mysql в виде десятичной (17,3) десятичной карты гибернации для Java-типа BigDecimal и с простой функцией:

public static Date bigDec2Date(BigDecimal tsp) {
    Calendar cal = Calendar.getInstance();
    cal.setTimeInMillis(tsp.longValue());
    return cal.getTime();
}
...