home *** CD-ROM | disk | FTP | other *** search
/ NetNews Usenet Archive 1992 #31 / NN_1992_31.iso / spool / comp / database / informix / 2809 < prev    next >
Encoding:
Internet Message Format  |  1992-12-24  |  1.2 KB

  1. Path: sparky!uunet!wupost!spool.mu.edu!agate!stanford.edu!rutgers!rochester!cantaloupe.srv.cs.cmu.edu!crabapple.srv.cs.cmu.edu!andrew.cmu.edu!mss+
  2. From: Mark_Sherman@transarc.com
  3. Newsgroups: comp.databases.informix
  4. Subject: parameters as host variables
  5. Message-ID: <QfCU96n0BwxdA_oKYR@transarc.com>
  6. Date: 24 Dec 92 18:32:38 GMT
  7. Organization: Carnegie Mellon, Pittsburgh, PA
  8. Lines: 34
  9.  
  10. I think I must be missing something obvious, but I can not seem to let
  11. procedure parameters be used as host variables in esql programs, e.g.,
  12.  
  13.     void foo(a,b)
  14.         EXEC SQL BEGIN DECLARE SECTION;
  15.         long int a;
  16.         long int b;
  17.         EXEC SQL END DECLARE SECTION;
  18.     {
  19.         EXEC SQL
  20.             UPDATE mytable
  21.             SET mycolumn = :a
  22.             WHERE myindex = :b;
  23.     }
  24.  
  25. This seems to work fine if I make everything a local variable:
  26.  
  27.     void foo(a,b)
  28.         long int a;
  29.         long int b;
  30.     {
  31.         EXEC SQL BEGIN DECLARE SECTION;
  32.         long int locala = a;
  33.         long int localb = b;
  34.         EXEC SQL END DECLARE SECTION;
  35.  
  36.         EXEC SQL
  37.             UPDATE mytable
  38.             SET mycolumn = :locala
  39.             WHERE myindex = :localb;
  40.     }
  41.  
  42. Am I missing something obvious? Thanks.
  43.     -Mark (mss@transarc.com)
  44.