2009-07-20 9 views
4

J'importe des données brutes dans groovy, des centaines de milliers d'entrées. J'utilise les champs de la table comme les clés d'une carte de hachage, puis j'utilise la méthode add (hash) sur un jeu de données SQL groove. L'ensemble de données passe à une table postgres et le champ ID est généré automatiquement à partir d'une séquence. J'ai besoin d'obtenir l'identifiant de chaque enregistrement tel qu'il est inséré.Récupérer l'ID du dernier objet inséré dans groovy

En java + hibernation, l'ID est inséré automatiquement dans le champ correspondant de l'objet en cours de persistance. Dans ce cas, la méthode add() ne renvoie rien et n'ajoute pas de champ id à la table de hachage. J'essaie d'éviter d'utiliser hibernate/gorm ici pour des raisons d'efficacité.

Merci pour tous les pointeurs ou pour une meilleure approche.

Répondre

4

groovy.sql.SQL a une requête executeInsert() qui renvoie une liste des valeurs de colonnes générées automatiquement pour chaque ligne insérée.

+0

J'ai besoin de réécrire le code pour générer mon instruction insert sql, mais c'est facile à faire à partir de la table de hachage qui contient l'enregistrement. –

Questions connexes