[Zope-dev] DB(Oracle) Transactions with Zope(/ZPatterns)
Andreas Repp
Andreas.Repp@lrz-muenchen.de
Thu, 17 May 2001 20:40:47 +0200 (MET DST)
Hi *,
i'm currently developing a (network information) DB web-interface using
ZPatterns specialists with one specialist for every logical object.
For instance i have a 'component'-specialist which handles
a object<->table mapping for the tables:
o component
- product (n:1 foreign key)
- location (n:1 foreign key)
- physical port (1:n foreign key)
- ...
The user (provided that she/he has permission) should be able to create
a new component as well as related physical ports, new product etc.
'create component' Sequence:
----------------------------
(1) call component-specialist newItem
-> skin script 'WHEN OBJECT ADDED' calls SQL insert statement
with default attribute parameters from ZClass
### + SQL commit (Zope/DC Oracle default behavior)! ###
(2) redirect user to .../component/#newid/edit
(3) user adds new physical port
-> skin script 'WHEN OBJECT ADDED' calls SQL insert statement
with component #newid as foreign key + default stuff from ZClass
again an SQL commit-statement is appended
...
(x) user clicks 'cancel'-button
-> MY PROBLEM (trash in DB because of no(?) possibility to make
a SQL rollback)
Questions:
----------
1. Is it possible to make sure a user stays with a specific DC Oracle
thread ? (trick timeouts via http-refresh ?)
2. Provided that a user can have her/his private DB thread (kind of a
private xterm with PL/SQL ;-) is it possible to wrap a bunch of SQL
statements (triggered by ZPatterns) into a (Oracle) DB Transaction ?
Any comments (maybe answers ;-) would be _very_ appreciated.
thank u in advance
Andy
----------------------------------------------------------------------
Andreas Repp andreas.repp@lrz-muenchen.de
Leibniz Rechenzentrum Muenchen www.lrz.de
Barer Str. 21 office +49 8441 4980772
D-80333 Muenchen mobile +49 172 8337010
----------------------------------------------------------------------