You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@ws.apache.org by Apache Wiki <wi...@apache.org> on 2006/10/12 05:04:29 UTC

[Ws Wiki] Update of "PartialUpdate" by KevinWilliams

Dear Wiki user,

You have subscribed to a wiki page or wiki category on "Ws Wiki" for change notification.

The following page has been changed by KevinWilliams:
http://wiki.apache.org/ws/PartialUpdate

New page:
The RDB DAS uses the SDO Change Summary to generate a set of database write operations.  Rather than generated a statement to update all columns in a table that maps to a SDO !DataObject Type, the DAS generates statements that update ony those columns that map to a modified !DataObject property.  For example, consider a Customer !DataObject that has had the !LastName property changed.  The '''partial update''' statement generated by the DAS will look something like this:
{{{
   UPDATE CUSTOMER SET LASTNAME = ? WHERE ID = ?
}}}
Rather than a statement that updates all columns like this:
{{{
   UPDATE CUSTOMER SET FIRSTNAME = ?, SET LASTNAME = ?, SET ADDRESS = ?, SET PHONE = ?, SET AGE = ?, SET SHOESIZE = ? WHERE ID = ?
}}}

There are a couple of very good reasons for using a partial update approach.  For one, a performance boost can be realized by applications writing to wide tables.  For example, tables with over 100 columns are not unheard of.  It can be a huge waste of resource to update 100 columns when only one was modified.  Another reason for partial update is that some databases employ [http://en.wikipedia.org/wiki/Database_trigger triggers] on specific columns in a table.  Partial updates are necessary when column triggers are employed to avoid tripping the trigger on every row update rather than only on updates to the specific column.

---------------------------------------------------------------------
To unsubscribe, e-mail: general-unsubscribe@ws.apache.org
For additional commands, e-mail: general-help@ws.apache.org