我有一個在MySQL中存儲數據的grails域。如何捕獲grails域中的毫秒數
其中我有一個Date
屬性,它在DB中創建DateTime
字段。但是,除了日期之外,我還希望捕獲毫秒。
有沒有辦法捕捉毫秒?
例子:
Class MyClass {
Date dateCreated
}
在MySQL存儲數據的2014-10-06 16:21:57
但我想捕捉毫秒爲好。
我有一個在MySQL中存儲數據的grails域。如何捕獲grails域中的毫秒數
其中我有一個Date
屬性,它在DB中創建DateTime
字段。但是,除了日期之外,我還希望捕獲毫秒。
有沒有辦法捕捉毫秒?
例子:
Class MyClass {
Date dateCreated
}
在MySQL存儲數據的2014-10-06 16:21:57
但我想捕捉毫秒爲好。
通過定義對象的小數點數量,MySQL 5.6.4及更高版本可以在日期時間對象的數據庫中保存毫秒。 (在這裏閱讀更多:MySQL reference manual)。默認情況下,Grails/Gorm不會這樣做。幸運的是,通過在域中定義sqlType可以輕鬆解決此問題,如下所示:
class ExampleDomain {
Date date
static mapping = {
date sqlType: 'datetime(3)'
}
}
您可以使用bigint(20)。你的Groovy/Grails領域可能看起來像,如果要存儲,因爲自動Unix紀元納秒時,例如將被保存:
class myClass {
Integer id
Long timestamp = System.nanoTime()
static mapping = {
timestamp sqlType: "bigint"
}
}
我想捕捉毫秒MySQL的時候,我需要運行查詢確定創建請求的確切時間.. – Anthony 2014-10-06 17:11:32
mysql支持這個,例如如果您手動創建表格,則可以創建一個類型爲datetime(3)的列。我也在尋找一種方法來讓grails爲我做這件事 – 2015-02-06 19:48:49