Full outer join. Locking tables.
Posted in 2009
Topics: SQL Development & Query Writing, Stored Procedures & SPL, Error Codes & Troubleshooting, Versions, Editions & End-of-Life
Hello everybody!
I have faced with 1 problem in IDS 10. I have a procedure, which creates 2
temporary tables (create temp table ...), then it joins them using ANSI Full
Outer Join syntax (select ...from A Full Outer Join B on (...)). At the end of
procedure it is needed to delete these temporary tables (drop table A; drop
table B;). But during procedure execution error message occurs (Error -214,
ISAM error 106). Example of procedure is following:
Create procedure test_full_join();
create temp table A
(
Col1 integer,
Col2 char(1)
) with no log;
create temp table B
(
Col1 integer,
Col2 char(1)
) with no log;
insert into A values (1, "A");
insert into A values (2, "B");
insert into A values (3, "C");
insert into B values (3, "C");
insert into B values (4, "D");
insert into B values (5, "E");
Select a.Col2 v1, b.Col2 v2
From A
Full Outer Join B On (A.Col1 = B.Col2)
Into Temp tResult;
Drop Table A;
Drop Table B;End Procedure;
Has anybody faced with problem like this? Is it normal IDS behaviour?
I think that it looks like some bug, because right and left outer joins work
fine, without any locks.
Thanks for answers in advance.