[Info-ingres] E_OP0897 Consistency Check?
Martin Bowes
martin.bowes at ndph.ox.ac.uk
Tue May 15 13:41:45 UTC 2018
Oh good, because I was just typing in how that worked for me on my Ingres version etc.
Marty
From: Adrian Williamson [mailto:adrian.williamson at rationalcommerce.com]
Sent: 15 May 2018 14:40
To: Martin Bowes; info-ingres at lists.planetingres.org
Cc: 'Karl and Betty Schendel'
Subject: RE: [Info-ingres] E_OP0897 Consistency Check?
Hi,
My apologies Marty - you did correct it completely - I didn't try your full solution I only did the inOUT procedure part.
Thinking now...
Cheers
Adrian
From: info-ingres-bounces at lists.planetingres.org<mailto:info-ingres-bounces at lists.planetingres.org> <info-ingres-bounces at lists.planetingres.org<mailto:info-ingres-bounces at lists.planetingres.org>> On Behalf Of Martin Bowes
Sent: 15 May 2018 14:33
To: Adrian Williamson <adrian.williamson at rationalcommerce.com<mailto:adrian.williamson at rationalcommerce.com>>; info-ingres at lists.planetingres.org<mailto:info-ingres at lists.planetingres.org>
Subject: Re: [Info-ingres] E_OP0897 Consistency Check?
Yes please,
Marty
From: Adrian Williamson [mailto:adrian.williamson at rationalcommerce.com]
Sent: 15 May 2018 14:32
To: Martin Bowes; info-ingres at lists.planetingres.org<mailto:info-ingres at lists.planetingres.org>
Cc: 'Karl and Betty Schendel'
Subject: RE: [Info-ingres] E_OP0897 Consistency Check?
Hi,
Marty; I just tried your suggested syntax and it fails the same way as mine.
Karl; The columns all match for type (integer2 in this case):
Column Name Type Length Nulls Defaults Seq
dl_no char 9 no no 1
dlc_code char 3 no no 2
dly_prov_cnt integer 2 no no
dlc_start_dt ingresdate no no
dlc_end_dt ingresdate no no
mto_code integer 1 no no
dlc_audit_us char 32 no yes
dlc_audit_dt ingresdate no yes
opt_lock_cnt integer 1 no yes
agne_code integer 2 no yes
dlc_aud_agne integer 2 no yes
This is the provoking statement:
insert into driving_lic_cat values ('16645875','A', 1, date('today'), date('14-may-2020') , 0, 'DRIVERWS',date('now'),0,55,55);\g
There is a non-updateable view which makes reference to this table but other than that it is uncomplicated.
Marty, I'll drop you over a create table statement if you want?
Karl, is there something I can switch on so I can try and narrow down where it is getting upset?
Cheers
Adrian
From: info-ingres-bounces at lists.planetingres.org<mailto:info-ingres-bounces at lists.planetingres.org> <info-ingres-bounces at lists.planetingres.org<mailto:info-ingres-bounces at lists.planetingres.org>> On Behalf Of Martin Bowes
Sent: 15 May 2018 14:15
To: Adrian Williamson <adrian.williamson at rationalcommerce.com<mailto:adrian.williamson at rationalcommerce.com>>; info-ingres at lists.planetingres.org<mailto:info-ingres at lists.planetingres.org>
Subject: Re: [Info-ingres] E_OP0897 Consistency Check?
Hi Adrian,
My first guess would be something like...
create procedure incrementprvcnt(
INOUT provcnt integer2 not null not default
)
as
begin
provcnt=2;
end;
create rule proccntpatch
before insert into driving_lic_cat referencing new as newcat
where newcat.dlc_audit_us = 'DRIVERWS' and newcat.dly_prov_cnt = 1
for each row execute procedure incrementprvcnt(provcnt = newcat.dly_prov_cnt)
If that doesn't work send me your table structure and I'll see what I can do.
Marty
From: Adrian Williamson [mailto:adrian.williamson at rationalcommerce.com]
Sent: 15 May 2018 14:06
To: info-ingres at lists.planetingres.org<mailto:info-ingres at lists.planetingres.org>
Subject: [Info-ingres] E_OP0897 Consistency Check?
Hi,
My goto database ape (DBA) is off driving around Spain at the moment so I was hoping someone could shed some light on how I managed to get this lovely response after I created a rule fired procedure and then provoked it with an insert statement:
E_OP0897 Consistency Check: a query tree constant or resdom node uses a
source/destination type.
(Tue May 15 13:54:25 2018)
I've not written too many rules in the past, and the trouble is it was in the past. So I fully expect this to be user error somewhere.
This is syntax which I got the database to agree to:
create or replace procedure IncrementPrvCnt(provcnt = i2 not null) as begin provcnt = 2 ;end;\g
create rule PrvCntPatch before insert into driving_lic_cat referencing new as newcat
where newcat.dlc_audit_us = 'DRIVERWS' and newcat.dly_prov_cnt = 1
for each row execute procedure IncrementPrvCnt(provcnt = byref(newcat.dly_prov_cnt));
What have I done wrong?
i.e. could someone translate the error message into something useful?
Cheers
Adrian
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.planetingres.org/pipermail/info-ingres/attachments/20180515/e1860c1a/attachment.html>
More information about the Info-ingres
mailing list