选择A表的DDL时出错

时间:2013-05-20 14:08:00

标签: sybase powerbuilder sybase-ase

每当我尝试获取表格的DDL时,我都会收到此错误

  

无法创建临时表'#tmp'。前缀名称'#tmp'已被另一个临时表'#tmp'使用   在嵌套级别“0”处已有另一个名为“ccolumn”的光标   在嵌套级别'0'处已经有另一个名为'cindex'的光标   在嵌套级别“0”处已有另一个名为“索引”的光标   在嵌套级别“0”处已有另一个名为“cprotect”的光标   尝试在对象'#tmp00000450018282794'中插入重复的键行,并使用唯一索引'_tmp_19748930791'

我该如何解决?

1 个答案:

答案 0 :(得分:0)

#tmp表是特定于会话的临时工作表,应用程序使用它来存储被操作的数据。如果您收到表已存在的错误,则表示先前尝试生成DDL时尚未完成新的启动,或者先前的尝试已挂起,并且需要被杀死。

假设您处于开发环境中,我首先尝试关闭并重新启动Powerbuilder以查看是否清除了错误。如果不清楚,接下来要做的就是重新启动Powerbuilder正在使用的数据库服务器作为它的数据源。

或者,您可以手动连接到数据库(通过isql)并尝试终止未关闭的进程,并手动删除#tmp表。