| Hi Theo.   It's no problem to write it in C, the only problem is, that 
the precompiler for this statement:   "case '2':  {                                                  
EXEC SQL
   SET TRANSACTION ISOLATION LEVEL READ UNCOMMITTED; 
 }"   returns this error:   SQL0104  30      21  
Position 55  Token UNCOMMITTED was not valid. Valid tokens: 
COMMITTED.   Can you help me out? Is there an error in your code, or am I 
doing something wrong?   Jacob                                     
   
  ----- Original Message -----  Sent: 27. april 2000 13:24 Subject: Re: DB2 trigger doesn't work 
  when INSERT comes from Java app; works fine from STRSQL 
 Yes, been there!  I found out that the following code is needed in your 
  trigger program (which in my case is RPG ;-) Point of the whole problem is that you have to set the 
  Transaction Isolation Level according to the triggering operation. After I 
  made this change everything worked fine. Maybe someone else can help you to 
  implement this in C, if you can't do it yourself.   Good luck!   Theo.    * 
  ====================================================================* 
  Set Transaction Isolation Level to the same as the 
  application
 * 
  ====================================================================
 c                   
  select
 c                   
  when      
  cmtlck='0'
 c/exec sql SET TRANSACTION ISOLATION LEVEL 
  NONE
 c/end-exec
 c                   
  when      
  cmtlck='1'
 c/exec sql SET TRANSACTION ISOLATION LEVEL READ UNCOMMITTED, 
  READ
 c+         
  WRITE
 c/end-exec
 c                   
  when      
  cmtlck='2'
 c/exec sql SET TRANSACTION ISOLATION LEVEL READ 
  COMMITTED
 c/end-exec
 c                   
  when      
  cmtlck='3'
 c/exec sql SET TRANSACTION ISOLATION LEVEL 
  ALL
 c/end-exec                
  c                   
  endsl
   ----- Original Message -----  Sent: donderdag 27 april 2000 11:37 Subject: DB2 trigger doesn't work when INSERT comes from 
  Java app; works fine from STRSQL > Hi all
 >
 > I have created a 
  trigger in ILE C, which takes care of autogenerating a
 > primary key for 
  a statistics table. This is made the following way:
 >
 > 1. The 
  primary key has a DEFAULT of 0
 > 2. The trigger first adds 1 to the 
  value in the key table - a separate table
 > only with the key.
 > 
  3. The trigger updates the value each time after insert in the 
  statistics
 > table WHERE primary key = 0.
 >
 > Now the weird 
  part comes. I've tested this with INSERT statements in STRSQL,
 > and it 
  works exactly like it's supposed to. But when I execute a INSERT
 > 
  statement from the Java app, for which the database is made, the 
  trigger
 > never runs, which of course results in a key 
  violation.
 >
 > Any good ideas?
 >
 > Jacob
 >
 >
 > +---
 > | This is the JAVA/400 Mailing List!
 > | 
  To submit a new message, send your mail to JAVA400-L@midrange.com.
 > | To subscribe 
  to this list send email to JAVA400-L-SUB@midrange.com.
 > | To 
  unsubscribe from this list send email to JAVA400-L-UNSUB@midrange.com.
 > | 
  Questions should be directed to the list owner: joe@zappie.net
 > +---
 |