Return-Path: Delivered-To: apmail-db-derby-user-archive@www.apache.org Received: (qmail 47162 invoked from network); 2 Jun 2008 13:34:57 -0000 Received: from hermes.apache.org (HELO mail.apache.org) (140.211.11.2) by minotaur.apache.org with SMTP; 2 Jun 2008 13:34:57 -0000 Received: (qmail 44858 invoked by uid 500); 2 Jun 2008 13:34:59 -0000 Delivered-To: apmail-db-derby-user-archive@db.apache.org Received: (qmail 44837 invoked by uid 500); 2 Jun 2008 13:34:59 -0000 Mailing-List: contact derby-user-help@db.apache.org; run by ezmlm Precedence: bulk list-help: list-unsubscribe: List-Post: List-Id: Reply-To: "Derby Discussion" Delivered-To: mailing list derby-user@db.apache.org Received: (qmail 44826 invoked by uid 99); 2 Jun 2008 13:34:59 -0000 Received: from athena.apache.org (HELO athena.apache.org) (140.211.11.136) by apache.org (qpsmtpd/0.29) with ESMTP; Mon, 02 Jun 2008 06:34:59 -0700 X-ASF-Spam-Status: No, hits=-1.0 required=10.0 tests=RCVD_IN_DNSWL_LOW,SPF_PASS X-Spam-Check-By: apache.org Received-SPF: pass (athena.apache.org: local policy) Received: from [192.18.43.132] (HELO sca-es-mail-1.sun.com) (192.18.43.132) by apache.org (qpsmtpd/0.29) with ESMTP; Mon, 02 Jun 2008 13:34:09 +0000 Received: from fe-sfbay-09.sun.com ([192.18.43.129]) by sca-es-mail-1.sun.com (8.13.7+Sun/8.12.9) with ESMTP id m52DYQXY013276 for ; Mon, 2 Jun 2008 06:34:26 -0700 (PDT) Received: from conversion-daemon.fe-sfbay-09.sun.com by fe-sfbay-09.sun.com (Sun Java System Messaging Server 6.2-8.04 (built Feb 28 2007)) id <0K1U0000188GKR00@fe-sfbay-09.sun.com> (original mail from Richard.Hillegas@Sun.COM) for derby-user@db.apache.org; Mon, 02 Jun 2008 06:34:26 -0700 (PDT) Received: from richard-hillegas-computer.local ([129.150.16.124]) by fe-sfbay-09.sun.com (Sun Java System Messaging Server 6.2-8.04 (built Feb 28 2007)) with ESMTPSA id <0K1U00JIH8DEJ620@fe-sfbay-09.sun.com> for derby-user@db.apache.org; Mon, 02 Jun 2008 06:34:26 -0700 (PDT) Date: Mon, 02 Jun 2008 06:34:26 -0700 From: Rick Hillegas Subject: Re: Problems porting trigger from DB2 In-reply-to: <17584753.post@talk.nabble.com> Sender: Richard.Hillegas@Sun.COM To: Derby Discussion Message-id: <4843F6E2.3050608@sun.com> MIME-version: 1.0 Content-type: text/plain; format=flowed; charset=ISO-8859-1 Content-transfer-encoding: 7BIT References: <17584753.post@talk.nabble.com> User-Agent: Thunderbird 2.0.0.14 (Macintosh/20080421) X-Virus-Checked: Checked by ClamAV on apache.org Hi Carlos, The fired SET statement does not look like a legal Derby statement to me. Maybe you could tackle your problem this way: 1) Declare the Categories table to have an autoid column 2) Then migrate your legacy data into Derby 3) Then use the ALTER TABLE ALTER COLUMN statement to reset the next value of the autoid column. Hope this helps, -Rick granbajo wrote: > Hello, > > I am porting an application from DB2 where I use some triggers to generate > unique ids (max previous id + 1). I do not want to use an autoid column in > Derby because I already have some data that I need to migrate. > > This trigger works in DB2, up to version 8: > > CREATE TRIGGER Tests.AutoCategoryID > NO CASCADE BEFORE INSERT ON Tests.Categories > REFERENCING NEW AS n > FOR EACH ROW MODE DB2SQL > SET (n.categoryid) = (SELECT value(MAX(categoryid),0) + 1 FROM > Test.Categories); > > However, when I run it in Derby, I get the following error: > > ERROR 42X01: Syntax error: Encountered "SET" at line 5, column 4. > > Any ideas? >