Regression(?) in 3.0: compiler requires explicit name for column which is 
reference to built-in context variable and is specified in CURSOR declaration 
statement
-----------------------------------------------------------------------------------------------------------------------------------------------------------------

                 Key: CORE-4513
                 URL: http://tracker.firebirdsql.org/browse/CORE-4513
             Project: Firebird Core
          Issue Type: Bug
            Reporter: Pavel Zotov
            Priority: Minor


DDL: 
=====
recreate table t(id int primary key, x int); 
commit;

Test:
====
set term ^;
execute block 
as
  declare v_id int;
  declare c cursor for(
     select
         rdb$db_key
        ,id
        ,x
     from t where id = :v_id
  );
begin

end
^
set term ^;


This trivial EB passed Ok on 2.5.3.26788, but returns compiler error on 
3.0.0.31280:

Statement failed, SQLSTATE = 42000
Dynamic SQL Error
-SQL error code = -104
-Invalid command
-no column name specified for column number 1 in derived table C

The same results will be if replace 'rdb$db_key' with others built-in 
variables: current_connection,  current_timestamp etc.

PS. I'm not sure that this is really bug. Maybe it is CORRECT that now FB 
compels us to explicitly specify such pseudo-columns like rdb$db_key et al in 
order to avoid muddle after cursor results will be fetched and pass to 'outer' 
levels of handling.

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: 
http://tracker.firebirdsql.org/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

------------------------------------------------------------------------------
Firebird-Devel mailing list, web interface at 
https://lists.sourceforge.net/lists/listinfo/firebird-devel

Reply via email to