[Search for users] [Overall Top Noters] [List of all Conferences] [Download this site]

Conference orarep::nomahs::sql

Title:SQL notes
Moderator:NOVA::SMITHI
Created:Wed Aug 27 1986
Last Modified:Thu Jun 05 1997
Last Successful Update:Fri Jun 06 1997
Number of topics:3895
Total number of notes:17726

3881.0. "SQL$PRE/COBOL :%SQL-F-SYM_EXP error on END-EXEC." by svrav1.au.oracle.com::MCHAN () Wed Apr 23 1997 03:04

Rdb V6.1A ECO1, Rdb V7 ECO1

Hi,

A customer reported a problem with SQL COBOL precomilation after upgraded Rdb 
from V5.1A to V6.1-4.  All their application failed on END-EXEC statement:

	EXEC SQL BEGIN DECLARE SECTION END-EXEC.
	                               1
	%SQL-F-SYM_EXP, (1) One of the following symbols was expected:
	; END_EXEC
	EXEC SQL BEGIN DECLARE SECTION END-EXEC.
      

I tested the precompiler with TRANSFER_WEST.SCO from the examples
directory. It failed with the same errors. This particular program uses 
END-EXEC. I have attached the log from this below.

SQL_ALL_DATATYPES.SCO compiles OK, but it uses END_EXEC.

I think that END-EXEC vs END_EXEC is the problem.

Is this a known problem or have I missed something?


Regards,
Michael.


----------------------------------------------------------------------------
$sql$pre/cobol /CHECK=(BOUNDS)/ALIGN/NOANSI/COPY/SQLOPT=WARN=NODEPRECATe 
TRANSFER_WEST.SCO
    EXEC SQL INCLUDE SQLCA END-EXEC.
                           1
%SQL-F-SYM_EXP, (1) One of the following symbols was expected:
%SQL-F-EXPSYMLIS,       ; END_EXEC
    EXEC SQL INCLUDE SQLCA END-EXEC.
                              2
%SQL-F-BADPROCEND, (2) SQL statement was terminated with an improper statement t
erminator
%SQL-I-SCAN_ADVANCED, Scanner advanced to EXEC
    EXEC SQL DECLARE EAST ALIAS FOR FILENAME '2PCEAST' END-EXEC.
                                                       1
%SQL-F-SYM_EXP, (1) One of the following symbols was expected:
%SQL-F-EXPSYMLIS,       USER USING RUNTIME NO VIDA ELAN NSDS WITH
%SQL-F-EXPSYMLIS,       DSRI LINK DBKEY DBIV1 NOVIDA RDBVMS RDB060
%SQL-F-EXPSYMLIS,       RDB051 RDB050 RDB042 RDB041 RDB040 RDB031
%SQL-F-EXPSYMLIS,       RDB030 DBIV31 DEFAULT NATIONAL PRESTARTED
%SQL-F-EXPSYMLIS,       RESTRICTED IDENTIFIER MULTISCHEMA ; END_EXEC
    EXEC SQL DECLARE EAST ALIAS FOR FILENAME '2PCEAST' END-EXEC.
                                                          2
%SQL-F-BADPROCEND, (2) SQL statement was terminated with an improper statement t
erminator
%SQL-I-SCAN_ADVANCED, Scanner advanced to EXEC
    EXEC SQL DECLARE WEST ALIAS FOR FILENAME '2PCWEST' END-EXEC.
                                                       1
%SQL-F-SYM_EXP, (1) One of the following symbols was expected:
%SQL-F-EXPSYMLIS,       USER USING RUNTIME NO VIDA ELAN NSDS WITH
%SQL-F-EXPSYMLIS,       DSRI LINK DBKEY DBIV1 NOVIDA RDBVMS RDB060
%SQL-F-EXPSYMLIS,       RDB051 RDB050 RDB042 RDB041 RDB040 RDB031
%SQL-F-EXPSYMLIS,       RDB030 DBIV31 DEFAULT NATIONAL PRESTARTED
%SQL-F-EXPSYMLIS,       RESTRICTED IDENTIFIER MULTISCHEMA ; END_EXEC
    EXEC SQL DECLARE WEST ALIAS FOR FILENAME '2PCWEST' END-EXEC.
                                                          2
%SQL-F-BADPROCEND, (2) SQL statement was terminated with an improper statement t
erminator
%SQL-I-SCAN_ADVANCED, Scanner advanced to EXEC
    END-EXEC.
    1
%SQL-F-SYM_EXP, (1) One of the following symbols was expected:
%SQL-F-EXPSYMLIS,       AND ; END_EXEC
%SQL-I-SCAN_ADVANCED, Scanner advanced to EXEC
    END-EXEC.
            2
%SQL-F-SYM_EXP, (2) One of the following symbols was expected:
%SQL-F-EXPSYMLIS,       SQL
%SQL-I-SCAN_ADVANCED, Scanner advanced to EXEC
    END-EXEC.
    1
%SQL-F-SYM_EXP, (1) One of the following symbols was expected:
%SQL-F-EXPSYMLIS,       . : INDICATOR || * / + - AND OR GROUP HAVING
%SQL-F-EXPSYMLIS,       JOIN LEFT FULL UNION CROSS RIGHT INNER LIMIT
%SQL-F-EXPSYMLIS,       ORDER NATURAL FOR OPTIMIZE ; END_EXEC
%SQL-I-ERRSYMREP, Error symbol replaced by AND
    END-EXEC.
            2
%SQL-F-SYM_EXP, (2) One of the following symbols was expected:
%SQL-F-EXPSYMLIS,       . ( name INDICATOR * / + - = > < IS IN <>
%SQL-F-EXPSYMLIS,       >= <= NOT LIKE BETWEEN STARTING CONTAINING
%SQL-F-EXPSYMLIS,       AND OR GROUP HAVING JOIN LEFT FULL UNION CROSS
%SQL-F-EXPSYMLIS,       RIGHT INNER LIMIT ORDER NATURAL FOR OPTIMIZE
%SQL-F-EXPSYMLIS,       ; END_EXEC
    IF SQLCODE LESS THAN ZERO THEN
    1
%SQL-F-BADPROCEND, (1) SQL statement was terminated with an improper statement t
erminator
    IF SQLCODE LESS THAN ZERO THEN
    2
%SQL-F-BADPROCEND, (2) SQL statement was terminated with an improper statement t
erminator
%SQL-I-SCAN_ADVANCED, Scanner advanced to EXEC
    END-EXEC.
    1
%SQL-F-SYM_EXP, (1) One of the following symbols was expected:
%SQL-F-EXPSYMLIS,       . : INDICATOR || * / + - AND OR OPTIMIZE ;
%SQL-F-EXPSYMLIS,       END_EXEC
%SQL-I-ERRSYMREP, Error symbol replaced by AND
    END-EXEC.
            2
%SQL-F-SYM_EXP, (2) One of the following symbols was expected:
%SQL-F-EXPSYMLIS,       . ( name INDICATOR * / + - = > < IS IN <>
%SQL-F-EXPSYMLIS,       >= <= NOT LIKE BETWEEN STARTING CONTAINING
%SQL-F-EXPSYMLIS,       AND OR OPTIMIZE ; END_EXEC
    IF SQLCODE LESS THAN ZERO THEN
    1
%SQL-F-BADPROCEND, (1) SQL statement was terminated with an improper statement t
erminator
    IF SQLCODE LESS THAN ZERO THEN
    2
%SQL-F-BADPROCEND, (2) SQL statement was terminated with an improper statement t
erminator
%SQL-I-SCAN_ADVANCED, Scanner advanced to EXEC
    END-EXEC.
    1
%SQL-F-SYM_EXP, (1) One of the following symbols was expected:
%SQL-F-EXPSYMLIS,       RETURNING PLACEMENT ; END_EXEC
    END-EXEC.
       2
%SQL-F-BADPROCEND, (2) SQL statement was terminated with an improper statement t
erminator
%SQL-I-SCAN_ADVANCED, Scanner advanced to End of Statement
-------------------------------------------------------------------------------
T.RTitleUserPersonal
Name
DateLines
3881.1NOVA::SMITHIDon&#039;t understate or underestimate Rdb!Wed Apr 23 1997 11:4814
Look in the Rdb V6.1 Release notes...

    1.9 COBOL Precompiler No Longer Translates Hyphens to Underscores

          To comply with the ANSI COBOL standard, the SQL precompiler
          for COBOL no longer translates hyphens (-)  to underscores
          (_).  In previous versions, the SQL precompiler considered
          hyphens and underscores to be equivalent characters
          in COBOL parameter names. Beginning with V6.1, these
          characters are not considered equivalent.

So a quick global edit is required.

Ian
3881.2svrav1.au.oracle.com::MCHANThu Apr 24 1997 03:213
    Thanks for the pointer.
    
    Michael.