轉自:http://blog.163.com/hanjh_520/blog/static/2186737220100125245614/
-958 Temp table <table-name> already exists in session.
This statement tries to create a table with the name that is shown, but a temporary
table with that name already exists. Only
one
temporary table with a given name can exist in a session.
Check the spelling of the name. If the name is spelled as you intended, check that
a temporary table with the given name does not exist in the session. To review the names of temporary
tables, query the systabnames table as follows:
SELECT dbsname, tabname FROM sysmaster:systabnames
WHERE tabname = <table-name>
If the name exists, review this name by querying the systables table in
<dbsname>:
SELECT tabname FROM <dbsname>:systables
WHERE tabname = <table-name>
If the name does not exist in systables (" No rows found "), this table is a
temporary table.
solution:
if exists (SELECT dbsname, tabname FROM sysmaster:systabnames WHERE tabname = <table-name> )
drop table <table-name>;
end if