Re: Help ?? : 4GL Informix 6.0 Porting Problem
Posted in 1995
Topics: Connectivity: ESQL/C, 4GL & Embedded SQL
> From: shanke11@singnet.com.sg (L.Kalyanaraman) > Subject: Help ?? : 4GL Informix 6.0 Porting Problem > Date: Wed, 12 Jul 1995 12:57:38 GMT > To: informix-list@rmy.emory.edu > > We have recently moved from Informix Online 5.1, 4GL 4.1 to Online 7.1 > 4GL 6.0 environment. Under SCO Open Server 3.0 > > While the programs worked perfectly under 4.1 4GL. We have problems in > 6.0. We are using <rowid> to update all the data using rowid cursor. > Under new version all the updates fails with the following error > > Cusor <Hex Decimal> cursor not found > I remember something about the scope of cursors no longer being limited to a single module in 6.0 4gl, and the default 6.0 c4gl behavior of mangling cursor names to avoid possible cross-file name collision when migrating old applications. (You used to be able to have the same cursor name in more than one file, for different cursors.) Check c4gl options (by invoking c4gl with no arguments). There should be an option to defeat this name mangling (which is okay to do if you know there will be no such name conflicts). My guess is that you are preparing some statement with what you think is the cursor name (like an UPDATE WHERE CURRENT OF cursor-name) and the engine doesn't know what cursor you are talking about (because it got name mangled during pre-processing). See also anything in your 6.0 4gl release notes about scope of identifiers. Rowid's should not be a problem with unfragmented tables (or fragmented tables for that matter; see ALTER TABLE table-name ADD ROWIDS). -- Jim Buchalski (jamesb@informix.com) Atlanta, GA USA