Jonathan Leffler <johnl@informix.com> wrote:
> Temporary tables are unique to the process creating them; they cannot be
> seen by any other process at any time. The use of the owner name is
> redundant. You've probably found a bug, which should probably be reported
> to Informix Tech Support, but the workaround is obvious and safe for all
> versions of Informix -- do not use the owner name on temporary tables.
> Note that even if the same user is running the same program on two
> different terminals concurrently (or even the same terminal), the temp
> tables in the first process are completely disjoint from the temp tables o
> }I get an SQL error -242 "could not open database table
(username.tempapply)
> }System error number -113
> }ISAM error: the file is locked
> }
> }This seems to happen only on temporary tables that are created with the
> }user name as a prefix. This is supposed to make it unique so that when
> }someone else is running another program that creates the same temporary
> }table with a different user name as a prefix.
> }
> }This was not a problem in 5.01 but seems to be in 7.12.
> }Is there a priviledge problem?
After changing from 5.01 to 7.12 we got a similar problem. In some programs
we created temp tables and at the end we wanted to drop them (We don't have
to at the end, I know, but we want to do it).We got the error "table not
found"! We made tests and dropped the temp table in several places in the
code. At one point there's a function call (one of many). The drop command
was successful before the function call, but the drop command as first
command in the function failed. So we've got programs where it works and some
where not (perhaps only because of one more function call).
Our workaround is: first select count(*) from temp table, then drop table.
--
*** Sven.Tolkemit@discuss.north.de ***