The temporary tables exist with the 'nice' name only for the current session. Make sure you're not closing your connection, and use the same as you used to create the temporary table.
If you must use a different session and the other session's not closed, you might be able to access it by looking at the tables in ?tempdb?. They should have *long* names with your session ID in the name. If you pass your session ID to your other connection, you may be able to find the temporary table. But I don't know if your other session will be able to read from it.
...roboticus
Update: I should've mentioned that I've not touched a Sybase database in five years, so my recollections may be (a) out of date, (b) totally wrong, or (c) some combination of a & b. | [reply] |
roboticus is correct - a #tmp table is only visible from the session (connection) that created it.
You are either creating more than one connection explicitly, or DBD::Sybase is doing it for you because you attempt to start more than one query at the same time. If the latter you can find out more by setting the $dbh->{syb_no_child_con} attribute which inhibits the creation of child connections to handle multiple active statement handles.
Michael
| [reply] |