Let us compare the ORM with Conventional model to have a
better understanding of the ORM.
Conventional Model
|
ORM Model
|
Programmer needs to write all the SQL queries for each and
every interaction with the database.
|
Programmer needs not write even a single SQL query for any
interaction with the database.
|
It is tough to handle the changes to the SQL queries in
case of any change requests. This is in comparison with ORM.
|
The change requests to any database related activities can
be done in a very easy way. As these are classes and methods we can keep the
track of the changes with version control systems pretty accurately.
|
We generally have a separate team for handling DDL (Data
Definition Language) and DML (Data Manipulation Language) issues.
|
We may have a team for the same here, but their work will
be limited to only DDL. As we do not have DML in form of queries, programmers
are responsible for the DML related tasks. Hence, programmer has a better
control on the same.
|
Support for Transactions is available.
|
It is a common notion that Transactions are not available
in ORM. But Support for the Transactions are very much available.
|
Chance of Errors due to the SQL queries. This is more as
the complexity of the SQL queries.
|
Chance of Errors is less as we have our code written in
classes and methods.
|
We have some Interfaces to the database to see the
execution of the SQL statements like Query Analyzer. This helps the
programmer for testing the database.
|
In most of the ORM packages we do not have such a kind of
facility. Some of the ORM packages have their own language called as OQL –
Object query Language.
|