> Isn't the 'try' statement rather similar to a 'savepoint' command? I > realize it would be difficult to override the behaviour of try {...} > catch (...) {...}, but it shouldn't be too hard to wrap it somehow for > exceptions in database code. Yes, but I believe the OP was getting two levels of his application mixed up: he was doing something that caused a rollback in the *database*, then hoping to recover in a catch block in the *application* without terminating the aborted transaction in the database. Or so I gather. You are right in another post about the purpose and design of transactions, and don't use the discussion here as a model, though drivers seem to often do weird stuff with transactions behind your back. Psycopg (python) does an implicit begin, so you must commit, which then starts another begin automatically. I think you can set a handle to do autocommit, but I never do. This seems best because it forces you to handle transactions explicitly, but I can imagine other (bad) approaches, and Spring may use them (though I think the difficulty is that MS-SQL is sloppy, not Spring, and that the OP is still getting used to TX's and MS-SQL covered up some things that shouldn't have been covered). W ---------------------------(end of broadcast)--------------------------- TIP 2: Don't 'kill -9' the postmaster