Dan,

Please see below.

~ Shreyas

Daniel John Debrunner wrote:

<>Shreyas Kaushik wrote:

Attached is the new patch and answesr are inline.






Daniel John Debrunner wrote:



I got the patch to apply and am running tests on it.





9 (possibly with one unrelated failure) tests fail or have changed
output with this patch. Most of the differences in the output seem to be
a change in the reporting of the failing column to include the implicit
schema name, e.g. T1.C1 is replaced by APP.T1.C1 in an error message.
However, there are a few troublesome diffs. The dml162 test from the
nist suite fails to create a view that previously was created ok. This
dml162 issue would need to be resolved before the patch could be accepted.


With the changes the fully qualified column name should be given or it would take the default schema and the
default schema does not have what the test is looking for. Since everything is prefixed with "HU." so should the
column in question. With that change it works fine. Sending a patch for this also.


In addition there are no additional, new, test cases that show the
change in behaviour to demostrate that Derby-18 is indeed fixed. Test
cases can be added to existing tests.


Sending a patch having new tests ( 2 tests ) that check the fix.

Again, like the identifier change, if a patch from a contibutor causes
the tests to "fail" due to modified but correct output, who should be
fixing up the test masters? I'd assume the contributor.


Sending the patch for the master files as well.

Dan.



Index: select.out
===================================================================
--- select.out  (revision 153026)
+++ select.out  (working copy)
@@ -179,4 +179,8 @@
 ERROR 42X09: The table or alias name 'APP.S1.T1' is used more than once in the 
FROM list.
 ij> select "S1.T1".d1 from "S1.T1", APP."S1.T1";
 ERROR 42X09: The table or alias name 'APP.S1.T1' is used more than once in the 
FROM list.
+ij> select SYS."S1.T1".d1 from "S1.T1";
+ERROR 42X04: Column 'SYS.S1.T1.D1' is not in any table in the FROM list or it 
appears within a join specification and is outside the scope of the join 
specification or it appears in a HAVING clause and is not in the GROUP BY list. 
 If this is a CREATE or ALTER TABLE statement then 'SYS.S1.T1.D1' is not a 
column in the target table.
+ij> select SYS."S1.T1".d1 from "S1.T1" t1;
+ERROR 42X04: Column 'SYS.S1.T1.D1' is not in any table in the FROM list or it 
appears within a join specification and is outside the scope of the join 
specification or it appears in a HAVING clause and is not in the GROUP BY list. 
 If this is a CREATE or ALTER TABLE statement then 'SYS.S1.T1.D1' is not a 
column in the target table.
 ij> 
Index: subquery.out
===================================================================
--- subquery.out        (revision 153026)
+++ subquery.out        (working copy)
@@ -522,7 +522,7 @@
 select * from s ss (c1, c2, c3, c4, c5) where exists (select i from tt);
 ERROR 42X04: Column 'I' is not in any table in the FROM list or it appears 
within a join specification and is outside the scope of the join specification 
or it appears in a HAVING clause and is not in the GROUP BY list.  If this is a 
CREATE or ALTER TABLE statement then 'I' is not a column in the target table.
 ij> select * from s ss (c1, c2, c3, c4, c5) where exists (select ss.i from tt);
-ERROR 42X04: Column 'SS.I' is not in any table in the FROM list or it appears 
within a join specification and is outside the scope of the join specification 
or it appears in a HAVING clause and is not in the GROUP BY list.  If this is a 
CREATE or ALTER TABLE statement then 'SS.I' is not a column in the target table.
+ERROR 42X04: Column 'APP.SS.I' is not in any table in the FROM list or it 
appears within a join specification and is outside the scope of the join 
specification or it appears in a HAVING clause and is not in the GROUP BY list. 
    If this is a CREATE or ALTER TABLE statement then 'APP.SS.I' is not a 
column in the target table.
 ij> -- correlation name exists at both levels, but only column match is at
 -- parent level
 select * from s where exists (select s.i from tt s);
@@ -531,12 +531,12 @@
 select * from s where exists (select * from tt) and exists (select ii from t);
 ERROR 42X04: Column 'II' is not in any table in the FROM list or it appears 
within a join specification and is outside the scope of the join specification 
or it appears in a HAVING clause and is not in the GROUP BY list.  If this is a 
CREATE or ALTER TABLE statement then 'II' is not a column in the target table.
 ij> select * from s where exists (select * from tt) and exists (select tt.ii 
from t);
-ERROR 42X04: Column 'TT.II' is not in any table in the FROM list or it appears 
within a join specification and is outside the scope of the join specification 
or it appears in a HAVING clause and is not in the GROUP BY list.  If this is a 
CREATE or ALTER TABLE statement then 'TT.II' is not a column in the target 
table.
+ERROR 42X04: Column 'APP.TT.II' is not in any table in the FROM list or it 
appears within a join specification and is outside the scope of the join 
specification or it appears in a HAVING clause and is not in the GROUP BY list. 
    If this is a CREATE or ALTER TABLE statement then 'APP.TT.II' is not a 
column in the target table.
 ij> -- correlated column in a derived table
 select * from s, (select * from tt where i = ii) a;
 ERROR 42X04: Column 'I' is not in any table in the FROM list or it appears 
within a join specification and is outside the scope of the join specification 
or it appears in a HAVING clause and is not in the GROUP BY list.  If this is a 
CREATE or ALTER TABLE statement then 'I' is not a column in the target table.
 ij> select * from s, (select * from tt where s.i = ii) a;
-ERROR 42X04: Column 'S.I' is not in any table in the FROM list or it appears 
within a join specification and is outside the scope of the join specification 
or it appears in a HAVING clause and is not in the GROUP BY list.  If this is a 
CREATE or ALTER TABLE statement then 'S.I' is not a column in the target table.
+ERROR 42X04: Column 'APP.S.I' is not in any table in the FROM list or it 
appears within a join specification and is outside the scope of the join 
specification or it appears in a HAVING clause and is not in the GROUP BY list. 
 If this is a CREATE or ALTER TABLE statement then 'APP.S.I' is not a column in 
the target table.
 ij> -- positive tests
 -- simple correlated subqueries
 select (select i from tt where ii = i and ii <> 1) from s;
Index: groupBy.out
===================================================================
--- groupBy.out (revision 153026)
+++ groupBy.out (working copy)
@@ -37,7 +37,7 @@
 select a from t1 group by a having c = 1;
 ERROR 42X04: Column 'C' is not in any table in the FROM list or it appears 
within a join specification and is outside the scope of the join specification 
or it appears in a HAVING clause and is not in the GROUP BY list.  If this is a 
CREATE or ALTER TABLE statement then 'C' is not a column in the target table.
 ij> select a from t1 o group by a having a = (select a from t1 where b = b.o);
-ERROR 42X04: Column 'B.O' is not in any table in the FROM list or it appears 
within a join specification and is outside the scope of the join specification 
or it appears in a HAVING clause and is not in the GROUP BY list.  If this is a 
CREATE or ALTER TABLE statement then 'B.O' is not a column in the target table.
+ERROR 42X04: Column 'APP.B.O' is not in any table in the FROM list or it 
appears within a join specification and is outside the scope of the join 
specification or it appears in a HAVING clause and is not in the GROUP BY list. 
 If this is a CREATE or ALTER TABLE statement then 'APP.B.O' is not a column in 
the target table.
 ij> -- ?s in group by
 select a from t1 group by ?;
 ERROR 42X01: Syntax error: Encountered "?" at line 2, column 27.
@@ -562,7 +562,7 @@
 ERROR 42X19: The WHERE or HAVING clause or CHECK CONSTRAINT definition is a 
'INTEGER' expression.  It must be a BOOLEAN expression.
 ij> -- column references in having clause not allowed if no group by
 select * from t1 having c1 = 1;
-ERROR 42Y35: Column reference 'T1.C1' is invalid. When the SELECT list 
contains at least 1 aggregate then all entries must be valid aggregate 
expressions.
+ERROR 42Y35: Column reference 'APP.T1.C1' is invalid. When the SELECT list 
contains at least 1 aggregate then all entries must be valid aggregate 
expressions.
 ij> select 1 from t1 having c1 = 1;
 ERROR 42X04: Column 'C1' is not in any table in the FROM list or it appears 
within a join specification and is outside the scope of the join specification 
or it appears in a HAVING clause and is not in the GROUP BY list.  If this is a 
CREATE or ALTER TABLE statement then 'C1' is not a column in the target table.
 ij> -- correlated subquery in having clause
@@ -588,7 +588,7 @@
 ij> -- all 6 queries below should fail after bug 5653 is fixed
 -- select * 
 select * from t1 having 1=1;
-ERROR 42Y35: Column reference 'T1.C1' is invalid. When the SELECT list 
contains at least 1 aggregate then all entries must be valid aggregate 
expressions.
+ERROR 42Y35: Column reference 'APP.T1.C1' is invalid. When the SELECT list 
contains at least 1 aggregate then all entries must be valid aggregate 
expressions.
 ij> -- select column
 select c1 from t1 having 1=1;
 ERROR 42Y35: Column reference 'C1' is invalid. When the SELECT list contains 
at least 1 aggregate then all entries must be valid aggregate expressions.
@@ -597,13 +597,13 @@
 ERROR 42Y35: Column reference 'C1' is invalid. When the SELECT list contains 
at least 1 aggregate then all entries must be valid aggregate expressions.
 ij> -- non-correlated subquery in having clause
 select * from t1 having 1 = (select 1 from t1 where c1 = 0.0);
-ERROR 42Y35: Column reference 'T1.C1' is invalid. When the SELECT list 
contains at least 1 aggregate then all entries must be valid aggregate 
expressions.
+ERROR 42Y35: Column reference 'APP.T1.C1' is invalid. When the SELECT list 
contains at least 1 aggregate then all entries must be valid aggregate 
expressions.
 ij> -- expression in select list
 select (c1 * c1) / c1 from t1 where c1 <> 0 having 1=1;
 ERROR 42Y35: Column reference 'C1' is invalid. When the SELECT list contains 
at least 1 aggregate then all entries must be valid aggregate expressions.
 ij> -- between
 select * from t1 having 1 between 1 and 2;
-ERROR 42Y35: Column reference 'T1.C1' is invalid. When the SELECT list 
contains at least 1 aggregate then all entries must be valid aggregate 
expressions.
+ERROR 42Y35: Column reference 'APP.T1.C1' is invalid. When the SELECT list 
contains at least 1 aggregate then all entries must be valid aggregate 
expressions.
 ij> -- drop the table
 drop table t1;
 0 rows inserted/updated/deleted
Index: dml162.out
===================================================================
--- dml162.out  (revision 153026)
+++ dml162.out  (working copy)
@@ -18,7 +18,7 @@
    CREATE VIEW BLIVET (CITY, PNUM, EMPNUM, EMPNAME, GRADE,
       HOURS, PNAME, PTYPE, BUDGET) AS
 --0      HU.STAFF NATURAL JOIN HU.WORKS NATURAL JOIN HU.PROJ;
-         SELECT PROJ.CITY, HU.PROJ.PNUM, HU.STAFF.EMPNUM, EMPNAME, GRADE, 
HOURS, PNAME, PTYPE, BUDGET
+         SELECT HU.PROJ.CITY, HU.PROJ.PNUM, HU.STAFF.EMPNUM, EMPNAME, GRADE, 
HOURS, PNAME, PTYPE, BUDGET
       FROM HU.STAFF JOIN HU.WORKS ON (HU.STAFF.EMPNUM=HU.WORKS.EMPNUM) JOIN 
HU.PROJ ON (HU.PROJ.PNUM=HU.WORKS.PNUM AND HU.PROJ.CITY=HU.STAFF.CITY)
          ;
 0 rows inserted/updated/deleted
Index: orderby.out
===================================================================
--- orderby.out (revision 153026)
+++ orderby.out (working copy)
@@ -460,7 +460,7 @@
 ij> select c1 from t1 union select c3 from t3 order by asdf.c3;
 ERROR 42877: A qualified column name 'ASDF.C3' is not allowed in the ORDER BY 
clause.
 ij> select c1 from t1 order by sys.t1.c1;
-ERROR 42X10: 'SYS.T1' is not an exposed table name in the scope in which it 
appears.
+ERROR 42X04: Column 'SYS.T1.C1' is not in any table in the FROM list or it 
appears within a join specification and is outside the scope of the join 
specification or it appears in a HAVING clause and is not in the GROUP BY list. 
    If this is a CREATE or ALTER TABLE statement then 'SYS.T1.C1' is not a 
column in the target table.
 ij> select c1 from app.t1 order by sys.t1.c1;
 ERROR 42X04: Column 'SYS.T1.C1' is not in any table in the FROM list or it 
appears within a join specification and is outside the scope of the join 
specification or it appears in a HAVING clause and is not in the GROUP BY list. 
 If this is a CREATE or ALTER TABLE statement then 'SYS.T1.C1' is not a column 
in the target table.
 ij> select c1 from t1 c order by app.c.c1;
@@ -469,10 +469,10 @@
 ERROR 42X04: Column 'APP.T1.C1' is not in any table in the FROM list or it 
appears within a join specification and is outside the scope of the join 
specification or it appears in a HAVING clause and is not in the GROUP BY list. 
 If this is a CREATE or ALTER TABLE statement then 'APP.T1.C1' is not a column 
in the target table.
 ij> -- a is not a column in t1
 select 1 as a from t1 order by t1.a;
-ERROR 42X04: Column 'T1.A' is not in any table in the FROM list or it appears 
within a join specification and is outside the scope of the join specification 
or it appears in a HAVING clause and is not in the GROUP BY list.  If this is a 
CREATE or ALTER TABLE statement then 'T1.A' is not a column in the target table.
+ERROR 42X04: Column 'APP.T1.A' is not in any table in the FROM list or it 
appears within a join specification and is outside the scope of the join 
specification or it appears in a HAVING clause and is not in the GROUP BY list. 
    If this is a CREATE or ALTER TABLE statement then 'APP.T1.A' is not a 
column in the target table.
 ij> -- t3.c1 does not exist
 select * from t1, t3 order by t3.c1;
-ERROR 42X04: Column 'T3.C1' is not in any table in the FROM list or it appears 
within a join specification and is outside the scope of the join specification 
or it appears in a HAVING clause and is not in the GROUP BY list.  If this is a 
CREATE or ALTER TABLE statement then 'T3.C1' is not a column in the target 
table.
+ERROR 42X04: Column 'APP.T3.C1' is not in any table in the FROM list or it 
appears within a join specification and is outside the scope of the join 
specification or it appears in a HAVING clause and is not in the GROUP BY list. 
    If this is a CREATE or ALTER TABLE statement then 'APP.T3.C1' is not a 
column in the target table.
 ij> -- rollback should release the prepared statements
 rollback ;
 ij> -- . order by on join
@@ -869,7 +869,7 @@
 ij> select t.* from t order by d;
 ERROR 42X04: Column 'D' is not in any table in the FROM list or it appears 
within a join specification and is outside the scope of the join specification 
or it appears in a HAVING clause and is not in the GROUP BY list.  If this is a 
CREATE or ALTER TABLE statement then 'D' is not a column in the target table.
 ij> select t.* from t order by t.d;
-ERROR 42X04: Column 'T.D' is not in any table in the FROM list or it appears 
within a join specification and is outside the scope of the join specification 
or it appears in a HAVING clause and is not in the GROUP BY list.  If this is a 
CREATE or ALTER TABLE statement then 'T.D' is not a column in the target table.
+ERROR 42X04: Column 'APP.T.D' is not in any table in the FROM list or it 
appears within a join specification and is outside the scope of the join 
specification or it appears in a HAVING clause and is not in the GROUP BY list. 
 If this is a CREATE or ALTER TABLE statement then 'APP.T.D' is not a column in 
the target table.
 ij> select s.* from t s order by s.d;
 ERROR 42X04: Column 'S.D' is not in any table in the FROM list or it appears 
within a join specification and is outside the scope of the join specification 
or it appears in a HAVING clause and is not in the GROUP BY list.  If this is a 
CREATE or ALTER TABLE statement then 'S.D' is not a column in the target table.
 ij> select *, d from t order by d;
@@ -883,7 +883,7 @@
 ij> select s.*, d from t s order by s.d;
 ERROR 42X04: Column 'D' is not in any table in the FROM list or it appears 
within a join specification and is outside the scope of the join specification 
or it appears in a HAVING clause and is not in the GROUP BY list.  If this is a 
CREATE or ALTER TABLE statement then 'D' is not a column in the target table.
 ij> select t.*, t.d from t order by t.d;
-ERROR 42X04: Column 'T.D' is not in any table in the FROM list or it appears 
within a join specification and is outside the scope of the join specification 
or it appears in a HAVING clause and is not in the GROUP BY list.  If this is a 
CREATE or ALTER TABLE statement then 'T.D' is not a column in the target table.
+ERROR 42X04: Column 'APP.T.D' is not in any table in the FROM list or it 
appears within a join specification and is outside the scope of the join 
specification or it appears in a HAVING clause and is not in the GROUP BY list. 
 If this is a CREATE or ALTER TABLE statement then 'APP.T.D' is not a column in 
the target table.
 ij> select s.*, s.d from t s order by s.d;
 ERROR 42X04: Column 'S.D' is not in any table in the FROM list or it appears 
within a join specification and is outside the scope of the join specification 
or it appears in a HAVING clause and is not in the GROUP BY list.  If this is a 
CREATE or ALTER TABLE statement then 'S.D' is not a column in the target table.
 ij> select a, b, c from t order by d;
@@ -891,7 +891,7 @@
 ij> select a from t order by d;
 ERROR 42X04: Column 'D' is not in any table in the FROM list or it appears 
within a join specification and is outside the scope of the join specification 
or it appears in a HAVING clause and is not in the GROUP BY list.  If this is a 
CREATE or ALTER TABLE statement then 'D' is not a column in the target table.
 ij> select t.a from t order by t.d;
-ERROR 42X04: Column 'T.D' is not in any table in the FROM list or it appears 
within a join specification and is outside the scope of the join specification 
or it appears in a HAVING clause and is not in the GROUP BY list.  If this is a 
CREATE or ALTER TABLE statement then 'T.D' is not a column in the target table.
+ERROR 42X04: Column 'APP.T.D' is not in any table in the FROM list or it 
appears within a join specification and is outside the scope of the join 
specification or it appears in a HAVING clause and is not in the GROUP BY list. 
 If this is a CREATE or ALTER TABLE statement then 'APP.T.D' is not a column in 
the target table.
 ij> select s.a from t s order by s.d;
 ERROR 42X04: Column 'S.D' is not in any table in the FROM list or it appears 
within a join specification and is outside the scope of the join specification 
or it appears in a HAVING clause and is not in the GROUP BY list.  If this is a 
CREATE or ALTER TABLE statement then 'S.D' is not a column in the target table.
 ij> drop table t;
Index: LOB.out
===================================================================
--- LOB.out     (revision 153026)
+++ LOB.out     (working copy)
@@ -66,7 +66,9 @@
 ij> insert into b(blob, clob, nclob) values(cast(X'0031' as blob(3K)),cast('2' 
as clob(2M)));
 ERROR 42X14: 'NCLOB' is not a column in table or VTI 'APP.B'.
 ij> select b.blob, b.clob, b.nclob from b;
-ERROR 42X04: Column 'B.NCLOB' is not in any table in the FROM list or it 
appears within a join specification and is outside the scope of the join 
specification or it appears in a HAVING clause and is not in the GROUP BY list. 
 If this is a CREATE or ALTER TABLE statement then 'B.NCLOB' is not a column in 
the target table.
+ERROR 42X04: Column 'APP.B.NCLOB' is not in any table in the FROM list or it 
appears within a join specification and is outside the
+scope of the join specification or it appears in a HAVING clause and is not in 
the GROUP BY list.  If this is a CREATE or ALTER TABLE
+statement then 'APP.B.NCLOB' is not a column in the target table.
 ij> -- equal tests are not allowed
 select 1 from b where cast(X'e0' as blob(5))=cast(X'e0' as blob(5));
 ERROR 42818: Comparisons between 'BLOB' and 'BLOB' are not supported.
@@ -117,14 +119,19 @@
 ij> select * from b as b1, b as b2 where X'7575'=b1.blob;
 ERROR 42818: Comparisons between 'CHAR () FOR BIT DATA' and 'BLOB' are not 
supported.
 ij> select b.blob, b.clob, b.nclob from b where b.blob = '1' and b.clob = '2' 
and b.nclob = '3';
-ERROR 42X04: Column 'B.NCLOB' is not in any table in the FROM list or it 
appears within a join specification and is outside the scope of the join 
specification or it appears in a HAVING clause and is not in the GROUP BY list. 
 If this is a CREATE or ALTER TABLE statement then 'B.NCLOB' is not a column in 
the target table.
+ERROR 42X04: Column 'APP.B.NCLOB' is not in any table in the FROM list or it 
appears within a join specification and is outside the
+scope of the join specification or it appears in a HAVING clause and is not in 
the GROUP BY list.  If this is a CREATE or ALTER TABLE
+statement then 'APP.B.NCLOB' is not a column in the target table.
 ij> select b.blob from b where b.blob = '1';
 ERROR 42818: Comparisons between 'BLOB' and 'CHAR' are not supported.
 ij> -- however it works for types which cloudscape autocasts to char
 select b.clob from b where b.clob = '2';
 ERROR 42818: Comparisons between 'CLOB' and 'CHAR' are not supported.
 ij> select b.nclob from b where b.nclob = '3';
-ERROR 42X04: Column 'B.NCLOB' is not in any table in the FROM list or it 
appears within a join specification and is outside the scope of the join 
specification or it appears in a HAVING clause and is not in the GROUP BY list. 
 If this is a CREATE or ALTER TABLE statement then 'B.NCLOB' is not a column in 
the target table.
+ERROR 42X04: Column 'APP.B.NCLOB' is not in any table in the FROM list or it 
appears within a join specification and is outside the
+scope of the join specification or it appears in a HAVING clause and is not in 
the GROUP BY list.  If this is a CREATE or ALTER TABLE
+statement then 'APP.B.NCLOB' is not a column in the target table.
+Test Failed.
 ij> -- test insert of NULL
 insert into b values(null, null, null);
 ERROR 42802: The number of values assigned is not the same as the number of 
specified or implied columns.
Index: schemas.out
===================================================================
--- schemas.out (revision 153026)
+++ schemas.out (working copy)
@@ -729,7 +729,7 @@
 select * from test.s ss (c1, c2, c3, c4) where exists (select i from test.tt);
 ERROR 42X04: Column 'I' is not in any table in the FROM list or it appears 
within a join specification and is outside the scope of the join specification 
or it appears in a HAVING clause and is not in the GROUP BY list.  If this is a 
CREATE or ALTER TABLE statement then 'I' is not a column in the target table.
 ij> select * from test.s ss (c1, c2, c3, c4) where exists (select ss.i from 
test.tt);
-ERROR 42X04: Column 'SS.I' is not in any table in the FROM list or it appears 
within a join specification and is outside the scope of the join specification 
or it appears in a HAVING clause and is not in the GROUP BY list.  If this is a 
CREATE or ALTER TABLE statement then 'SS.I' is not a column in the target table.
+ERROR 42X04: Column 'APP.SS.I' is not in any table in the FROM list or it 
appears within a join specification and is outside the scope of the join 
specification or it appears in a HAVING clause and is not in the GROUP BY list. 
    If this is a CREATE or ALTER TABLE statement then 'APP.SS.I' is not a 
column in the target table.
 ij> -- correlation name exists at both levels, but only column match is at
 -- parent level
 select * from test.s where exists (select s.i from test.tt s);
Index: innerjoin.out
===================================================================
--- innerjoin.out       (revision 153026)
+++ innerjoin.out       (working copy)
@@ -33,12 +33,12 @@
 -- DB2 UDB: PASS
 -- DB2 CS:  FAIL
 select * from t1 join t1 on 1=1;
-ERROR 42X03: Column name 'T1.C1' is in more than one table in the FROM list.
+ERROR 42X03: Column name 'APP.T1.C1' is in more than one table in the FROM 
list.
 ij> -- duplicate exposed names
 select * from t1 join t1 on c1 = 1;
-ERROR 42X03: Column name 'T1.C1' is in more than one table in the FROM list.
+ERROR 42X03: Column name 'APP.T1.C1' is in more than one table in the FROM 
list.
 ij> select * from t1 join t1 on (c1);
-ERROR 42X03: Column name 'T1.C1' is in more than one table in the FROM list.
+ERROR 42X03: Column name 'APP.T1.C1' is in more than one table in the FROM 
list.
 ij> -- join clause only allowed to contain column references from tables being
 -- joined. DB2 doesn't allow references to correlated columns
 select * from t1, t2 join t3 on t1.c1 = t2.c1;
Index: outerjoin.out
===================================================================
--- outerjoin.out       (revision 153026)
+++ outerjoin.out       (working copy)
@@ -1875,7 +1875,7 @@
 2          |2          |2          |2          
 ij> -- These should fail too
 select * from ttab1, ttab1 left outer join ttab2 on (a=c);
-ERROR 42X03: Column name 'TTAB1.A' is in more than one table in the FROM list.
+ERROR 42X03: Column name 'APP.TTAB1.A' is in more than one table in the FROM 
list.
 ij> select * from ttab1 cor1, ttab1 left outer join ttab2 on (cor1.a=c);
 ERROR 42972: An ON clause associated with a JOIN operator is not valid.
 ij> -- This should pass
Index: dml162.sql
===================================================================
--- dml162.sql  (revision 153026)
+++ dml162.sql  (working copy)
@@ -21,7 +21,7 @@
    CREATE VIEW BLIVET (CITY, PNUM, EMPNUM, EMPNAME, GRADE,
       HOURS, PNAME, PTYPE, BUDGET) AS
 --0      HU.STAFF NATURAL JOIN HU.WORKS NATURAL JOIN HU.PROJ;
-         SELECT PROJ.CITY, HU.PROJ.PNUM, HU.STAFF.EMPNUM, EMPNAME, GRADE, 
HOURS, PNAME, PTYPE, BUDGET
+         SELECT HU.PROJ.CITY, HU.PROJ.PNUM, HU.STAFF.EMPNUM, EMPNAME, GRADE, 
HOURS, PNAME, PTYPE, BUDGET
       FROM HU.STAFF JOIN HU.WORKS ON (HU.STAFF.EMPNUM=HU.WORKS.EMPNUM) JOIN 
HU.PROJ ON (HU.PROJ.PNUM=HU.WORKS.PNUM AND HU.PROJ.CITY=HU.STAFF.CITY)
          ;
 -- PASS:0863 If view created successfully?
Index: select.sql
===================================================================
--- select.sql  (revision 153026)
+++ select.sql  (working copy)
@@ -121,3 +121,7 @@
 select * from "S1.T1" , APP."S1.T1";
 
 select "S1.T1".d1 from "S1.T1", APP."S1.T1";
+
+select SYS."S1.T1".d1 from "S1.T1";
+
+select SYS."S1.T1".d1 from "S1.T1" t1;

Reply via email to