Re: SQL END SQL postgresql
Mike Aubury <[email protected]> Wed, 7 Jul 2021 17:37:00 +0100
| Newsgroups | gmane.comp.lang.4gl.aubit.general |
|---|---|
| Message-ID | <CAGAq4WFUnqfOaauuNcMtWjdVNkyg80McRWppsyEd6nyd8jeOsQ@mail.gmail.com> |
Brill, I'm adding code to allow escaping those, so in future \:\: would work too, but glad you've got a work around in the meantime. <http://www.avg.com/email-signature?utm_medium=email&utm_source=link&utm_campaign=sig-email&utm_content=webmail> Virus-free. www.avg.com <http://www.avg.com/email-signature?utm_medium=email&utm_source=link&utm_campaign=sig-email&utm_content=webmail> <#DAB4FAD8-2DD7-40BB-A1B8-4E2AA1F9FDF2> On Wed, 7 Jul 2021 at 17:34, Iwan AB <[email protected]> wrote: > Dear Mike, > > I got it, I have no bison installed. After installing bison, it works now. > Thanks. > > Regards, > > Iwan > > > <https://www.avast.com/sig-email?utm_medium=email&utm_source=link&utm_campaign=sig-email&utm_content=webmail> Virus-free. > www.avast.com > <https://www.avast.com/sig-email?utm_medium=email&utm_source=link&utm_campaign=sig-email&utm_content=webmail> > <#m_-197361692628949301_DAB4FAD8-2DD7-40BB-A1B8-4E2AA1F9FDF2> > > On Wed, Jul 7, 2021 at 9:45 PM Mike Aubury <[email protected]> wrote: > >> Do you have "bison" installed ? >> >> (If not it will be using a pregenerated y.tab.c) >> >> If you look in incl/Makefile-common - you should see something like this >> >> #BISON will contatin full path to bison executable. It will already >> include >> #-y flag set from autoconf, or "no" if not found or disabled: >> BISON =LANG=C LC_ALL=C /usr/local/bin/bison -y -Wno-yacc >> BISON_EXE =/usr/local/bin/bison >> #YACC is variable name we use all over the make files, for Bison command >> YACC =$(strip ${BISON} ) >> >> >> >> (around line 393) >> >> If it helps - I'm using >> $ bison --version >> bison (GNU Bison) 3.3 >> Written by Robert Corbett and Richard Stallman. >> >> Copyright (C) 2019 Free Software Foundation, Inc. >> This is free software; see the source for copying conditions. There is NO >> warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR >> PURPOSE. >> >> >> >> <http://www.avg.com/email-signature?utm_medium=email&utm_source=link&utm_campaign=sig-email&utm_content=webmail> Virus-free. >> www.avg.com >> <http://www.avg.com/email-signature?utm_medium=email&utm_source=link&utm_campaign=sig-email&utm_content=webmail> >> <#m_-197361692628949301_m_-2897201770753434041_DAB4FAD8-2DD7-40BB-A1B8-4E2AA1F9FDF2> >> >> On Wed, 7 Jul 2021 at 15:40, Iwan AB <[email protected]> wrote: >> >>> Hi Mike, >>> >>> I've commented out the COLON part from the sqlblock.rule, recompile the >>> source, but still have the same error. >>> I also try removing the COLON part, recompile back, still the error >>> exists when compiling the program. >>> >>> sql_block_entry: >>> INTO expanded_obind_var_list { >>> $<ptr>$=A4GL_new_expr_simple >>> (ET_EXPR_SQLBLOCK_INTO); >>> $<ptr>$->expr_str_u.expr_list=$<ptr_list>2; >>> } >>> | DOLLAR SQL_TEXT { >>> char numbered_value[300]; >>> sprintf(numbered_value,"$%s",$<str>2); >>> $<ptr>$=A4GL_new_expr_simple_string(numbered_value, >>> ET_EXPR_SQLBLOCK_TEXT); >>> } >>> | DOLLAR ensured_variable_usage_expression { >>> $<ptr>$=$<ptr>2; >>> } >>> | sql_block_text { >>> $<ptr>$=A4GL_new_expr_simple_string($<sql_string>1, >>> ET_EXPR_SQLBLOCK_TEXT); >>> free($<sql_string>1); >>> } >>> ; >>> >>> Regards, >>> >>> Iwan >>> >>> >>> <https://www.avast.com/sig-email?utm_medium=email&utm_source=link&utm_campaign=sig-email&utm_content=webmail> Virus-free. >>> www.avast.com >>> <https://www.avast.com/sig-email?utm_medium=email&utm_source=link&utm_campaign=sig-email&utm_content=webmail> >>> <#m_-197361692628949301_m_-2897201770753434041_m_186899806486080012_DAB4FAD8-2DD7-40BB-A1B8-4E2AA1F9FDF2> >>> >>> On Wed, Jul 7, 2021 at 2:58 PM Mike Aubury <[email protected]> wrote: >>> >>>> ":" is used to denote the use of a 4gl variable (along with $) in the >>>> embedded SQL :( >>>> >>>> If you're compiling from source - you can comment that out and just use >>>> "$" : >>>> >>>> sql_block_entry: >>>> INTO expanded_obind_var_list { >>>> $<ptr>$=A4GL_new_expr_simple >>>> (ET_EXPR_SQLBLOCK_INTO); >>>> $<ptr>$->expr_str_u.expr_list=$<ptr_list>2; >>>> } >>>> | DOLLAR SQL_TEXT { >>>> char numbered_value[300]; >>>> sprintf(numbered_value,"$%s",$<str>2); >>>> $<ptr>$=A4GL_new_expr_simple_string(numbered_value, >>>> ET_EXPR_SQLBLOCK_TEXT); >>>> } >>>> | DOLLAR ensured_variable_usage_expression { >>>> $<ptr>$=$<ptr>2; >>>> } >>>> | COLON ensured_variable_usage_expression { >>>> $<ptr>$=$<ptr>2; >>>> } >>>> | sql_block_text { >>>> $<ptr>$=A4GL_new_expr_simple_string($<sql_string>1, >>>> ET_EXPR_SQLBLOCK_TEXT); >>>> free($<sql_string>1); >>>> } >>>> ; >>>> >>>> (aubit4glsrc/compilers/4glc/rules/sqlblock.rule) >>>> >>>> >>>> <http://www.avg.com/email-signature?utm_medium=email&utm_source=link&utm_campaign=sig-email&utm_content=webmail> Virus-free. >>>> www.avg.com >>>> <http://www.avg.com/email-signature?utm_medium=email&utm_source=link&utm_campaign=sig-email&utm_content=webmail> >>>> <#m_-197361692628949301_m_-2897201770753434041_m_186899806486080012_m_-7960415586225659124_DAB4FAD8-2DD7-40BB-A1B8-4E2AA1F9FDF2> >>>> >>>> On Wed, 7 Jul 2021 at 03:56, Iwan AB <[email protected]> wrote: >>>> >>>>> Hi, >>>>> >>>>> I try SQL END SQL block to check whether a table is defined with or >>>>> without oid in postgresql as follow >>>>> >>>>> SQL WITHOUT CONVERSIONS >>>>> >>>>> SELECT attname FROM pg_attribute >>>>> WHERE attrelid = 't_test'::regclass >>>>> AND attname = 'oid' >>>>> >>>>> END SQL >>>>> >>>>> when compiled, it came up with the following error >>>>> >>>>> SQL WITHOUT CONVERSIONS >>>>> >>>>> SELECT attname FROM pg_attribute >>>>> WHERE attrelid = 't_test'::regclass >>>>> |___________________________________________^ >>>>> | Error at line 24, character 45 >>>>> | ':' does not represent a defined variable (:) >>>>> AND attname = 'oid' >>>>> >>>>> END SQL >>>>> >>>>> why is that? >>>>> >>>>> Regards, >>>>> >>>>> Iwan >>>>> >>>>> >>>>> <https://www.avast.com/sig-email?utm_medium=email&utm_source=link&utm_campaign=sig-email&utm_content=webmail> Virus-free. >>>>> www.avast.com >>>>> <https://www.avast.com/sig-email?utm_medium=email&utm_source=link&utm_campaign=sig-email&utm_content=webmail> >>>>> <#m_-197361692628949301_m_-2897201770753434041_m_186899806486080012_m_-7960415586225659124_m_4709480780349622479_DAB4FAD8-2DD7-40BB-A1B8-4E2AA1F9FDF2> >>>>> _______________________________________________ >>>>> Aubit4gl-discuss mailing list >>>>> [email protected] >>>>> https://lists.sourceforge.net/lists/listinfo/aubit4gl-discuss >>>>> >>>> _______________________________________________ >>> Aubit4gl-discuss mailing list >>> [email protected] >>> https://lists.sourceforge.net/lists/listinfo/aubit4gl-discuss >>> >> _______________________________________________ > Aubit4gl-discuss mailing list > [email protected] > https://lists.sourceforge.net/lists/listinfo/aubit4gl-discuss > _______________________________________________ Aubit4gl-discuss mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/aubit4gl-discuss