> Slow and lots of consideration sounds like a good idea.

OK then. That means that for now, you'll have to store "changed" flags
and "original" values externally somewhere in your application, once
you migrate to jOOQ 3.0

> I can't remember enough of ADO.net to remember it in much detail :). I just
> remember liking the "DataTable" object, it was like having an in-memory copy
> of a view of the database that you could "sync" back after you had changed.
> Quite a simple concept, but very powerful. I'm just always surprised to have
> never found a Java "DataTable".

Well, a JDBC ResultSet is a "DataTable" in a way. Only, the API is
really very awkward, as you have to position an index in a cursor
first, every time you want to modify a cell at position (x, y)

> I guess because JOOQ knows all the keys and
> references, is typesafe and has "Tables" in Java, it is half way there to
> the DataTable.

I see, yes that sounds much like what I've had in mind recently.
org.jooq.Result could work in an "lazy" and "eager" sync mode.

- "lazy" means that you have to explicitly "flush" changes to the DB.
This probably includes List operations, such as Result.remove(), which
have to be flushed as delete operations. I'll have to think about this
again. There are lots of corner-cases, I guess. I have now registered
this as https://github.com/jOOQ/jOOQ/issues/2265
- "eager" means that you have to fetch a Result using
fetchUpdatable(). This would set the JDBC ResultSet.CONCUR_UPDATABLE
flag, allowing for creating an "online" JDBC ResultSet / cursor, where
the various ResultSet.updateXXX() methods can be used internally, by
jOOQ, every time a record from this result is changed. This is already
registered as https://github.com/jOOQ/jOOQ/issues/1846

I'll do some further reading in the MSDN docs, to see what this
DataTable is all about.

> Anyway, I'm a bit out of touch, I haven't been working on enough different
> projects lately to remember all the good and bad points of the various
> technologies :)

Well anyway, it's good to bring those impressions here :-) There's
always some good idea to take inspiration from

Cheers
Lukas

-- 
You received this message because you are subscribed to the Google Groups "jOOQ 
User Group" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
For more options, visit https://groups.google.com/groups/opt_out.


Reply via email to