ORM Mapping

  • Both SQL Server 2005/8, 2008 R2 and Oracle 10g R2 and 11g R1 and R2 participates in such transactions without resource manager in the Microsoft platform.

    This can sometimes be a crutch which is relied upon too much. If you create a transaction at the client outside around several database calls, you could end up having a database state which you really don't want if not every application (or part of a single application) does it the same way. Plus inconsistent order of operations can produce more deadlocking and programmers could fall into long running transactions with user intervention in the middle - yikes!

    But these are problems with or without an ORM - working around them and preventing them is part of solid software architecture and engineering principles. The ORM abstraction is just a very leaky one and people still need to understand the underlying behavior and not succumb to the complacency.

  • This can sometimes be a crutch which is relied upon too much. If you create a transaction at the client outside around several database calls, you could end up having a database state which you really don't want if not every application (or part of a single application) does it the same way. Plus inconsistent order of operations can produce more deadlocking and programmers could fall into long running transactions with user intervention in the middle - yikes!

    The above was an issue before SQL Server 2008 but the current version of ANSI SQL defined Transaction nesting at the point of connection which Microsoft added to only SQL Server 2008 and VS2008/10.

    Kind regards,
    Gift Peddie

  • kevin77 (3/31/2010)


    NHibernate, Hibernate, and I'm sure several others (I haven't used LINQ yet, so I can't say), just need to die and stop being used.

    Damn... a kindred spirit! 🙂

    Actually, I love the various forms of "Hibernate" and other ORMs. They provide a great source of entertainment and occasional revenue. 😉

    --Jeff Moden


    RBAR is pronounced "ree-bar" and is a "Modenism" for Row-By-Agonizing-Row.
    First step towards the paradigm shift of writing Set Based code:
    ________Stop thinking about what you want to do to a ROW... think, instead, of what you want to do to a COLUMN.
    "Change is inevitable... change for the better is not".

    Helpful Links:
    How to post code problems
    How to Post Performance Problems
    Create a Tally Function (fnTally)
    Intro to Tally Tables and Functions

Viewing 3 posts - 16 through 17 (of 17 total)

You must be logged in to reply to this topic. Login to reply