Oracle FAQ Your Portal to the Oracle Knowledge Grid
HOME | ASK QUESTION | ADD INFO | SEARCH | E-MAIL US
 

Home -> Community -> Usenet -> c.d.o.server -> Re: EXEC SQL <action> and EXEC SQL EXECUTE IMMEDIATE :<host of action>

Re: EXEC SQL <action> and EXEC SQL EXECUTE IMMEDIATE :<host of action>

From: Alex Vinokur <alexander.vinokur_at_telrad.co.il>
Date: Tue, 26 Oct 1999 07:14:35 GMT
Message-ID: <7v3kco$gf5$1@nnrp1.deja.com>


Thank you very much.
It works OK.

See more questin below.

	Thanks in advance,
	Alex

In article <m4gUOPPsWblNvXuTFdtMHAdpaM=0_at_4ax.com>,   tkyte_at_us.oracle.com wrote:
[snip]
>
> static int process( char * tname )
> {
> EXEC SQL BEGIN DECLARE SECTION;
> VARCHAR stmt[255];
> EXEC SQL END DECLARE SECTION;
> int rc;
>
> EXEC SQL WHENEVER SQLERROR CONTINUE;
>
> sprintf( stmt.arr, "select * from %s", tname );
> stmt.len = strlen(stmt.arr);
>
> EXEC SQL PREPARE S FROM :stmt;

  //=============================================
  // 1. I suppose S is the S Variable of SQLDA
  //
  // 2. However,
  // 	   EXEC SQL PREPARE zzz FROM :stmt;
  //    also works OK
  //    (sqlca.sqlcode = -942 : "table or view does not exist")
  //    Do we have to use the S Variable of SQLDA
  //       in EXEC SQL PREPARE above?
  //
  // 3.
  // -------------------------------------------------
  //  Pro*C/C++ Precompiler Programmer's Guide
  //  Release 8.0
  //  A58233-01
  //  F. Embedded SQL Commands and Directives
  //   Page#F-61
  // --------------------------------------------------
  // <quote>
  // This example illustrates the use of a PREPARE statement in a // Pro*C/C++ embedded SQL program:
  // EXEC SQL PREPARE my_statement FROM :my_string;
  // EXEC SQL EXECUTE my_statement;
  // </quote>
  //
  // However, using
  // 	   EXEC SQL PREPARE zzz FROM :stmt;
  //       EXEC SQL EXECUTE zzz;
  //    I have got sqlca.sqlcode = -1003 :
  //    "no statement parsed""
  //
  // Using
  //     EXEC SQL PREPARE S FROM :stmt;
  //     EXEC SQL EXECUTE S;
  //   I have got the same result (sqlca.sqlcode = -1003)
  //
  //	What is wrong?
  //=============================================


> rc = sqlca.sqlcode;
>
> EXEC SQL WHENEVER SQLERROR DO sqlerror_hard();
>
> return !(rc == 0);
> }

[snip]

Sent via Deja.com http://www.deja.com/
Before you buy. Received on Tue Oct 26 1999 - 02:14:35 CDT

Original text of this message

HOME | ASK QUESTION | ADD INFO | SEARCH | E-MAIL US