ws-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Apache Wiki <wikidi...@apache.org>
Subject [Ws Wiki] Update of "Tuscany/TuscanyJava/DAS Java Overview/RDBDAS Java User Guide/Write Operation Ordering" by KevinWilliams
Date Mon, 02 Oct 2006 17:26:43 GMT
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/Tuscany/TuscanyJava/DAS_Java_Overview/RDBDAS_Java_User_Guide/Write_Operation_Ordering

------------------------------------------------------------------------------
  
  Relational databases often use [http://en.wikipedia.org/wiki/Referential_integrity Referential
Integrity (RI)] constraints to maintain database consistency. When RI is enabled, database
operations must be performed in a specific order that prevents invalid references. If this
order is not adhered to then the database will throw an exception rather than let the write
succeed.
  
- When an application makes modifications to a data graph and then asks the RDB DAS to "apply
changes", the DAS will create a "batch" of database writes that must be sorted and the executed
in the correct order to avoid RI Contraint exceptions.  A simple example will help here. 
Assume a database with two tables CUSTOMER and ORDER.  Also assume that the ORDER table has
a [http://en.wikipedia.org/wiki/Foreign_key foreign key] reference to
+ When an application makes modifications to a data graph and then asks the RDB DAS to "apply
changes", the DAS will create a "batch" of database writes that must be sorted and the executed
in the correct order to avoid RI Contraint exceptions.  A simple example will help here. 
Assume a database with two tables CUSTOMER and ORDER.  Also assume that the ORDER table has
a [http://en.wikipedia.org/wiki/Foreign_key foreign key] reference to the CUSTOMER table.
 Now assume that the applicatio has made modifications to a data graph that was retreived
by the DAS using a SELECT statement like the following:
  
+ {{{
+    SELECT * FROM CUSTOMER LEFT JOIN ORDER ON CUSTOMER.ID = ORDER.CUSTOMER_ID WHERE CUSTOMER.NAME
= ?
+ }}}
+ 
+ The resulting data graph will contain all matching customers as well as there related orders.
 Now assume the application uses the SDO API's to delete some customer from the graph and
then also deletes the related orders.  Although the application deleted the customer first,
the DAS must delete the orders first from the database since deleteting the customer, with
existing referencing orders would violate the RI constraints and result in an exception.
+ 

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


Mime
View raw message