On Tue, May 16, 2006 at 04:16:55PM +0300, Kouber Saparev wrote: > The tricky part comes when I try to make my view insertable. Normally > I'd insert without specifying the sequence values, but in some cases I'd > want also to have full control of what's going into the underlying > tables. The thing is that when I try to do it the simple way by > specifying default values in the view itself: > > ALTER TABLE s_purchase ALTER COLUMN purchase_sid SET DEFAULT > NEXTVAL('purchase_purchase_sid_seq'); > ALTER TABLE s_purchase ALTER COLUMN subscription_purchase_sid SET > DEFAULT NEXTVAL('subscription_purchase_subscription_purchase_sid_seq'); You're doing ALTER TABLE on a view? > CREATE RULE s_purchase_insert AS > ON INSERT TO s_purchase DO INSTEAD ( > INSERT INTO purchase > (purchase_sid, data) > VALUES > (NEW.purchase_sid, NEW.pdata); > > INSERT INTO subscription_purchase > (subscription_purchase_sid, purchase_sid, data) > VALUES > (NEW.subscription_purchase_sid, NEW.purchase_sid, NEW.sdata); > ); Why not just use CURRVAL('purchase_purchase_sid_seq') in the rule? -- Jim C. Nasby, Sr. Engineering Consultant jnasby@xxxxxxxxxxxxx Pervasive Software http://pervasive.com work: 512-231-6117 vcard: http://jim.nasby.net/pervasive.vcf cell: 512-569-9461