当您在 Sybase ASE 12 中删除临时表时,有人会遇到问题吗?它仍然保留在当前会话中。因此,当尝试再次将数据选择到其中时,您会遇到“表已存在”

有帮助吗?

解决方案

嗯,在编写代码之前,您需要阅读手册,至少阅读您期望使用的命令的语法。否则你每次都会遇到问题。这取决于您想要做什么。

  1. SELECT ... INTO #MyTable 创建表并成功,因为它不存在。那么一秒钟 SELECT ... INTO #MyTable 将尝试创建 #MyTable, ,发现它存在,失败。

  2. 如果你想执行第二次 SELECT 放入同一张表中, TRUNCATE 表,然后使用 SELECT ... INTO EXISTING TABLE #MyTable.

  3. 或者 DROP TABLE 并跳过 EXISTING TABLE 修饰符。

  4. 如果你想让表包含几个的总和 SELECTS, ,显然,跳过 TRUNCATE.

其他提示

我通常这样做:

1)CREATE TABLE #temptable( ....

INSERT INTO #temptable SELECT .....

这永远不会给错误。

这解决了另一种可能的错误。如果WHERE伴随着“SELECT INTO”收益率没有行条款,临时表不会有零行,但临时表不会在所有创建。这样可以使以后的存储过程炸毁。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top