Bhavin Sanghani
,
Ranch Hand
Dec 08, 2008 17:38:00
Hi, I want to fire query using Hibernate to update specific field. Here, I dont have object in the memory so, other fields will have null value. If I try SaveOrUpdate() call then it will overwrite null values to other fields. I can retrieve the object, populate it and then fire saveOrUpdate() but this looks me inefficient. I can use SQL query but I am wondering if any better approach is available. Please guide. Thanks, Bhavin
Paul Sturrock
,
Bartender
staff
Dec 09, 2008 02:32:00
I can use SQL query but I am wondering if any better approach is available.
Yes, you could use an HQL query, then your code is cross platform.
Bhavin Sanghani
,
Ranch Hand
Dec 09, 2008 10:58:00
Hi, Other than cross platform thing, should we consider cost of loading object before updating it? Thanks Bhavin [ December 09, 2008: Message edited by: Bhavin Sanghani ]
Paul Sturrock
,
Bartender
staff
Dec 09, 2008 14:21:00
Probably not. The best approach is normally to prototype your functionality and performance test it, if this is a concern. My guess is its probably not that bad.
Emmanuel Bernard
,
author
Dec 10, 2008 05:18:00
Another approach is to use bulk queries in HQL insert ... select ... update ... delete ... which will update the data using an SQL query wo having to load the objects. check the Hibernate reference documentation for more info
Bhavin Sanghani
,
Ranch Hand
Dec 10, 2008 12:22:00
I think, with this approach it would be a problem if you are logging all the actions (INSERT, UPDATE, DELETE) in the database. You may have to write separate logic to log actual transaction..isn't it?
Emmanuel Bernard
,
author
Dec 11, 2008 04:15:00
Maybe, it depends what you mean by logging and how you do it. But it's true that object lifecycle is not called.
Paul Sturrock
,
Bartender
staff
Dec 11, 2008 04:20:00
You may have to write separate logic to log actual transaction..isn't it?
Do you mean seperate to the database's own transaction log?
He baked a muffin that stole my car! And this tiny ad:
a bit of art, as a gift, that will fit in a stocking
https://gardener-gift.com