Dans ma base de données, j'ai un type de colonne: datetime.
Exemple de données de colonne: 2009-02-03 19: 04: 23.0Groovy Sql et l'aide SimpleDateFormat
J'utilise: SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss.S");
pour définir mon format de date. J'utilise groovySQL pour lire des tables et pour chaque ligne, j'ajoute un nouvel objet SampleJ (mappé à une nouvelle table - SampleJ).
Voici ma fermeture:
def sampleQuery(int dataset) {
sqlModule.eachRow("""
select b.*
from dataset a, array_data b
where dataset_id = "${dataset}"
and a.array_data_id = b.array_data_id ;""")
{
def addSample= new SampleJ(it.toRowResult())
addSample.id = "${it.array_data_id}" as int
addSample.dateCreated = dateFormat.parse("${it.date_created}")
//addSample...(more columns)
addSample.save()
}
}
Quand je vérifie, ma table temporaire "SampleJ", toute ma date ne correspond pas à "$ {} it.date_created".
Toutes les dates sont définies sur "new Date()" (pour fermer le temps d'exécution).
Via débogueur:
"$ {} it.date_created" est définie comme "03 Tue Feb 2009 19:04:23 CST", ce qui correspond à (2009-02-03 19: 04: 23,0). Je devrais avoir cette date!
Comment puis-je résoudre ce problème? Je n'ai pas d'erreur, juste de mauvaises dates.
Existe-t-il un moyen facile de définir mes dates dans SampleJ?
Une alternative à addSample.dateCreated = dateFormat.parse ("$ {it.date_created}")?
Vous avez raison, mon problème est dû à dateCreated, en utilisant dateCreatedSample je n'ai aucun problème! GORM a des propriétés dateCreated et lastUpdated, voici mon erreur! Merci. –